From b63a148e088572fd2b410705442aa575b8fe538f Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 18 Mar 2013 17:09:12 +0100 Subject: [PATCH 01/12] [ticket/11450] Remove unused $db and $phpEx from metadata_manager construct() PHPBB3-11450 --- phpBB/includes/extension/metadata_manager.php | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/phpBB/includes/extension/metadata_manager.php b/phpBB/includes/extension/metadata_manager.php index 1637abd340..5f16a5bcd5 100644 --- a/phpBB/includes/extension/metadata_manager.php +++ b/phpBB/includes/extension/metadata_manager.php @@ -22,9 +22,7 @@ if (!defined('IN_PHPBB')) */ class phpbb_extension_metadata_manager { - protected $phpEx; protected $extension_manager; - protected $db; protected $phpbb_root_path; protected $template; protected $ext_name; @@ -34,17 +32,13 @@ class phpbb_extension_metadata_manager /** * Creates the metadata manager * - * @param phpbb_db_driver $db A database connection * @param string $extension_manager An instance of the phpbb extension manager * @param string $phpbb_root_path Path to the phpbb includes directory. - * @param string $phpEx php file extension */ - public function __construct($ext_name, phpbb_db_driver $db, phpbb_extension_manager $extension_manager, $phpbb_root_path, $phpEx = 'php', phpbb_template $template, phpbb_config $config) + public function __construct($ext_name, phpbb_extension_manager $extension_manager, $phpbb_root_path, phpbb_template $template, phpbb_config $config) { $this->phpbb_root_path = $phpbb_root_path; - $this->db = $db; $this->config = $config; - $this->phpEx = $phpEx; $this->template = $template; $this->extension_manager = $extension_manager; $this->ext_name = $ext_name; From 5794b3d621b9d48b9bf7dcdcc7cc15585bddd021 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 18 Mar 2013 23:02:24 +0100 Subject: [PATCH 02/12] [ticket/11450] Sort parameters alphabetically PHPBB3-11450 --- phpBB/includes/extension/metadata_manager.php | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/phpBB/includes/extension/metadata_manager.php b/phpBB/includes/extension/metadata_manager.php index 5f16a5bcd5..030e1bdb9d 100644 --- a/phpBB/includes/extension/metadata_manager.php +++ b/phpBB/includes/extension/metadata_manager.php @@ -35,12 +35,13 @@ class phpbb_extension_metadata_manager * @param string $extension_manager An instance of the phpbb extension manager * @param string $phpbb_root_path Path to the phpbb includes directory. */ - public function __construct($ext_name, phpbb_extension_manager $extension_manager, $phpbb_root_path, phpbb_template $template, phpbb_config $config) + public function __construct($ext_name, phpbb_config $config, phpbb_extension_manager $extension_manager, phpbb_template $template, $phpbb_root_path) { - $this->phpbb_root_path = $phpbb_root_path; $this->config = $config; - $this->template = $template; $this->extension_manager = $extension_manager; + $this->template = $template; + $this->phpbb_root_path = $phpbb_root_path; + $this->ext_name = $ext_name; $this->metadata = array(); $this->metadata_file = ''; From 001e3ebe9e9534ba0f05dd3a391a2a163a77347a Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 18 Mar 2013 23:09:37 +0100 Subject: [PATCH 03/12] [ticket/11450] Fix doc blocks and add missing class var $config PHPBB3-11450 --- phpBB/includes/extension/metadata_manager.php | 44 +++++++++++++++++-- 1 file changed, 41 insertions(+), 3 deletions(-) diff --git a/phpBB/includes/extension/metadata_manager.php b/phpBB/includes/extension/metadata_manager.php index 030e1bdb9d..14b77c085b 100644 --- a/phpBB/includes/extension/metadata_manager.php +++ b/phpBB/includes/extension/metadata_manager.php @@ -22,18 +22,56 @@ if (!defined('IN_PHPBB')) */ class phpbb_extension_metadata_manager { + /** + * phpBB Config instance + * @var phpbb_config + */ + protected $config; + + /** + * phpBB Extension Manager + * @var phpbb_extension_manager + */ protected $extension_manager; - protected $phpbb_root_path; + + /** + * phpBB Template instance + * @var phpbb_template + */ protected $template; + + /** + * phpBB root path + * @var string + */ + protected $phpbb_root_path; + + /** + * Name (including vendor) of the extension + * @var string + */ protected $ext_name; + + /** + * Metadata from the composer.json file + * @var array + */ protected $metadata; + + /** + * Link (including root path) to the metadata file + * @var string + */ protected $metadata_file; /** * Creates the metadata manager * - * @param string $extension_manager An instance of the phpbb extension manager - * @param string $phpbb_root_path Path to the phpbb includes directory. + * @param string $ext_name Name (including vendor) of the extension + * @param phpbb_config $config phpBB Config instance + * @param phpbb_extension_manager $extension_manager An instance of the phpBBb extension manager + * @param phpbb_template $template phpBB Template instance + * @param string $phpbb_root_path Path to the phpbb includes directory. */ public function __construct($ext_name, phpbb_config $config, phpbb_extension_manager $extension_manager, phpbb_template $template, $phpbb_root_path) { From 62f35121d948bd177004628a4be2b4e8810a50bd Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 18 Mar 2013 23:15:27 +0100 Subject: [PATCH 04/12] [ticket/11450] Fix all instances of phpbb_extension_metadata_manager PHPBB3-11450 --- phpBB/includes/acp/acp_extensions.php | 2 +- phpBB/includes/extension/manager.php | 2 +- tests/extension/metadata_manager_test.php | 6 ++---- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/phpBB/includes/acp/acp_extensions.php b/phpBB/includes/acp/acp_extensions.php index e4defa0400..c52e4e0473 100644 --- a/phpBB/includes/acp/acp_extensions.php +++ b/phpBB/includes/acp/acp_extensions.php @@ -54,7 +54,7 @@ class acp_extensions // If they've specified an extension, let's load the metadata manager and validate it. if ($ext_name) { - $md_manager = new phpbb_extension_metadata_manager($ext_name, $db, $phpbb_extension_manager, $phpbb_root_path, $phpEx, $template, $config); + $md_manager = new phpbb_extension_metadata_manager($ext_name, $config, $phpbb_extension_manager, $template, $phpbb_root_path); try { diff --git a/phpBB/includes/extension/manager.php b/phpBB/includes/extension/manager.php index a1022762b8..653117adfa 100644 --- a/phpBB/includes/extension/manager.php +++ b/phpBB/includes/extension/manager.php @@ -155,7 +155,7 @@ class phpbb_extension_manager */ public function create_extension_metadata_manager($name, phpbb_template $template) { - return new phpbb_extension_metadata_manager($name, $this->db, $this, $this->phpbb_root_path, $this->php_ext, $template, $this->config); + return new phpbb_extension_metadata_manager($name, $this->config, $this, $template, $this->phpbb_root_path); } /** diff --git a/tests/extension/metadata_manager_test.php b/tests/extension/metadata_manager_test.php index 05d1cbccc3..8873d25c9c 100644 --- a/tests/extension/metadata_manager_test.php +++ b/tests/extension/metadata_manager_test.php @@ -422,12 +422,10 @@ class metadata_manager_test extends phpbb_database_test_case { return new phpbb_extension_metadata_manager_test( $ext_name, - $this->db, + $this->config, $this->extension_manager, - $this->phpbb_root_path, - $this->phpEx, $this->template, - $this->config + $this->phpbb_root_path ); } } From 269c2ce98de5b55a713e998aacdaa5500d32b617 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Thu, 21 Mar 2013 15:19:26 +0100 Subject: [PATCH 05/12] [ticket/11450] Test the extensions details page in ACP Customise Tab PHPBB3-11450 --- .../fixtures/ext/foo/bar/composer.json | 23 ++++ tests/functional/metadata_manager_test.php | 104 ++++++++++++++++++ 2 files changed, 127 insertions(+) create mode 100644 tests/functional/fixtures/ext/foo/bar/composer.json create mode 100644 tests/functional/metadata_manager_test.php diff --git a/tests/functional/fixtures/ext/foo/bar/composer.json b/tests/functional/fixtures/ext/foo/bar/composer.json new file mode 100644 index 0000000000..50a8a7358a --- /dev/null +++ b/tests/functional/fixtures/ext/foo/bar/composer.json @@ -0,0 +1,23 @@ +{ + "name": "foo/bar", + "type": "phpbb3-extension", + "description": "Testing extensions", + "homepage": "", + "version": "1.0.0", + "time": "2013-03-21 01:01:01", + "licence": "GPL-2.0", + "authors": [{ + "name": "Joas Schilling", + "username": "nickvergessen", + "email": "nickvergessen@phpbb.com", + "homepage": "http://www.phpbb.com", + "role": "Developer" + }], + "require": { + "php": ">=5.3", + "phpbb": ">=3.1.0-dev" + }, + "extra": { + "display-name": "phpBB 3.1 Extension Testing" + } +} \ No newline at end of file diff --git a/tests/functional/metadata_manager_test.php b/tests/functional/metadata_manager_test.php new file mode 100644 index 0000000000..0f5b49f01e --- /dev/null +++ b/tests/functional/metadata_manager_test.php @@ -0,0 +1,104 @@ +phpbb_extension_manager = $this->get_extension_manager(); + + $this->purge_cache(); + $this->phpbb_extension_manager->enable('foo/bar'); + + $this->login(); + $this->admin_login(); + $this->add_lang('acp/extensions'); + } + + public function test_extensions_list() + { + $crawler = $this->request('GET', 'adm/index.php?i=acp_extensions&mode=main&sid=' . $this->sid); + $this->assert_response_success(); + + $this->assertContains($this->lang('EXTENSIONS_EXPLAIN'), $this->client->getResponse()->getContent()); + $this->assertContains('phpBB 3.1 Extension Testing', $this->client->getResponse()->getContent()); + $this->assertContains('Details', $this->client->getResponse()->getContent()); + } + + public function test_permissions_tab() + { + $crawler = $this->request('GET', 'adm/index.php?i=acp_extensions&mode=main&action=details&ext_name=foo%2Fbar&sid=' . $this->sid); + $this->assert_response_success(); + + // Test whether the details are displayed + $this->assertContains($this->lang('CLEAN_NAME'), $this->client->getResponse()->getContent()); + $this->assertContains('foo/bar', $this->client->getResponse()->getContent()); + + // Details should be html escaped + $this->assertContains($this->lang('PHP_VERSION'), $this->client->getResponse()->getContent()); + $this->assertContains('>=5.3', $this->client->getResponse()->getContent()); + } +} From 0de153d9034720745eb3589b95953de9a185360d Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Thu, 21 Mar 2013 15:27:15 +0100 Subject: [PATCH 06/12] [ticket/11450] Add test for unexisting composer.json PHPBB3-11450 --- tests/functional/metadata_manager_test.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tests/functional/metadata_manager_test.php b/tests/functional/metadata_manager_test.php index 0f5b49f01e..deb8af7707 100644 --- a/tests/functional/metadata_manager_test.php +++ b/tests/functional/metadata_manager_test.php @@ -88,7 +88,7 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case $this->assertContains('Details', $this->client->getResponse()->getContent()); } - public function test_permissions_tab() + public function test_extensions_details() { $crawler = $this->request('GET', 'adm/index.php?i=acp_extensions&mode=main&action=details&ext_name=foo%2Fbar&sid=' . $this->sid); $this->assert_response_success(); @@ -101,4 +101,13 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case $this->assertContains($this->lang('PHP_VERSION'), $this->client->getResponse()->getContent()); $this->assertContains('>=5.3', $this->client->getResponse()->getContent()); } + + public function test_extensions_details_notexists() + { + $crawler = $this->request('GET', 'adm/index.php?i=acp_extensions&mode=main&action=details&ext_name=not%2Fexists&sid=' . $this->sid); + $this->assert_response_success(); + + // Error message because the files do not exist + $this->assertContains('The required file does not exist:', $this->client->getResponse()->getContent()); + } } From a44a35926f9535c8d0d6afaeef6eeaf64a7f470e Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 1 Apr 2013 11:17:05 +0200 Subject: [PATCH 07/12] [ticket/11450] Require db_tools file to be included PHPBB3-11450 --- tests/extension/metadata_manager_test.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/extension/metadata_manager_test.php b/tests/extension/metadata_manager_test.php index 8873d25c9c..24b2861079 100644 --- a/tests/extension/metadata_manager_test.php +++ b/tests/extension/metadata_manager_test.php @@ -7,6 +7,8 @@ * */ +require_once dirname(__FILE__) . '/../../phpBB/includes/db/db_tools.php'; + class metadata_manager_test extends phpbb_database_test_case { protected $class_loader; From 74f3161b4b555f5ef5482c95a919aae468312142 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 1 Apr 2013 11:18:46 +0200 Subject: [PATCH 08/12] [ticket/11450] Fix tests class name PHPBB3-11450 --- tests/extension/metadata_manager_test.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/extension/metadata_manager_test.php b/tests/extension/metadata_manager_test.php index 24b2861079..7b51f2d50f 100644 --- a/tests/extension/metadata_manager_test.php +++ b/tests/extension/metadata_manager_test.php @@ -9,7 +9,7 @@ require_once dirname(__FILE__) . '/../../phpBB/includes/db/db_tools.php'; -class metadata_manager_test extends phpbb_database_test_case +class phpbb_extension_metadata_manager_test extends phpbb_database_test_case { protected $class_loader; protected $extension_manager; From d75af4109ff4a2323e1561f3376b4ef0515977cc Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 1 Apr 2013 11:20:34 +0200 Subject: [PATCH 09/12] [ticket/11450] Add new line at end of file PHPBB3-11450 --- tests/functional/fixtures/ext/foo/bar/composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/functional/fixtures/ext/foo/bar/composer.json b/tests/functional/fixtures/ext/foo/bar/composer.json index 50a8a7358a..067a9d38eb 100644 --- a/tests/functional/fixtures/ext/foo/bar/composer.json +++ b/tests/functional/fixtures/ext/foo/bar/composer.json @@ -20,4 +20,4 @@ "extra": { "display-name": "phpBB 3.1 Extension Testing" } -} \ No newline at end of file +} From 65c407044e77568ddcd80648830b8caf8fb3dd4a Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Thu, 4 Apr 2013 21:36:32 +0200 Subject: [PATCH 10/12] [ticket/11450] Move mocked class into mock/metadata_manager.php PHPBB3-11450 --- tests/extension/metadata_manager_test.php | 17 ++--------------- tests/mock/metadata_manager.php | 21 +++++++++++++++++++++ 2 files changed, 23 insertions(+), 15 deletions(-) create mode 100644 tests/mock/metadata_manager.php diff --git a/tests/extension/metadata_manager_test.php b/tests/extension/metadata_manager_test.php index 7b51f2d50f..2f38a26217 100644 --- a/tests/extension/metadata_manager_test.php +++ b/tests/extension/metadata_manager_test.php @@ -418,11 +418,11 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case * Get an instance of the metadata manager * * @param string $ext_name - * @return phpbb_extension_metadata_manager_test + * @return phpbb_mock_metadata_manager */ private function get_metadata_manager($ext_name) { - return new phpbb_extension_metadata_manager_test( + return new phpbb_mock_metadata_manager( $ext_name, $this->config, $this->extension_manager, @@ -431,16 +431,3 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case ); } } - -class phpbb_extension_metadata_manager_test extends phpbb_extension_metadata_manager -{ - public function set_metadata($metadata) - { - $this->metadata = $metadata; - } - - public function merge_metadata($metadata) - { - $this->metadata = array_merge($this->metadata, $metadata); - } -} \ No newline at end of file diff --git a/tests/mock/metadata_manager.php b/tests/mock/metadata_manager.php new file mode 100644 index 0000000000..a7fbf0681c --- /dev/null +++ b/tests/mock/metadata_manager.php @@ -0,0 +1,21 @@ +metadata = $metadata; + } + + public function merge_metadata($metadata) + { + $this->metadata = array_merge($this->metadata, $metadata); + } +} From 4c9c1d8c02142315d88bb7aaee2f64015c5033b7 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 12 Apr 2013 16:29:59 +0200 Subject: [PATCH 11/12] [ticket/11450] Use helpers to copy/remove files PHPBB3-11450 --- tests/functional/metadata_manager_test.php | 44 +++++++++++----------- 1 file changed, 21 insertions(+), 23 deletions(-) diff --git a/tests/functional/metadata_manager_test.php b/tests/functional/metadata_manager_test.php index deb8af7707..c639cad809 100644 --- a/tests/functional/metadata_manager_test.php +++ b/tests/functional/metadata_manager_test.php @@ -7,6 +7,8 @@ * */ +require_once dirname(__FILE__) . '/../../phpBB/includes/db/db_tools.php'; + /** * @group functional */ @@ -14,8 +16,10 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case { protected $phpbb_extension_manager; + static private $helpers; + static protected $fixtures = array( - 'foo/bar/composer.json', + 'foo/bar/', ); /** @@ -27,23 +31,16 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case global $phpbb_root_path; parent::setUpBeforeClass(); - $directories = array( - $phpbb_root_path . 'ext/foo/bar/', - ); + self::$helpers = new phpbb_test_case_helpers(self); - foreach ($directories as $dir) + if (!file_exists($phpbb_root_path . 'ext/foo/bar/')) { - if (!is_dir($dir)) - { - mkdir($dir, 0777, true); - } + self::$helpers->makedirs($phpbb_root_path . 'ext/foo/bar/'); } foreach (self::$fixtures as $fixture) { - copy( - "tests/functional/fixtures/ext/$fixture", - "{$phpbb_root_path}ext/$fixture"); + self::$helpers->copy_dir(dirname(__FILE__) . '/fixtures/ext/' . $fixture, $phpbb_root_path . 'ext/' . $fixture); } } @@ -57,11 +54,9 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case foreach (self::$fixtures as $fixture) { - unlink("{$phpbb_root_path}ext/$fixture"); + self::$helpers->empty_dir($phpbb_root_path . 'ext/' . $fixture); } - - rmdir("{$phpbb_root_path}ext/foo/bar"); - rmdir("{$phpbb_root_path}ext/foo"); + self::$helpers->empty_dir($phpbb_root_path . 'ext/foo/'); } public function setUp() @@ -83,9 +78,9 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case $crawler = $this->request('GET', 'adm/index.php?i=acp_extensions&mode=main&sid=' . $this->sid); $this->assert_response_success(); - $this->assertContains($this->lang('EXTENSIONS_EXPLAIN'), $this->client->getResponse()->getContent()); - $this->assertContains('phpBB 3.1 Extension Testing', $this->client->getResponse()->getContent()); - $this->assertContains('Details', $this->client->getResponse()->getContent()); + $this->assertContains($this->lang('EXTENSIONS_EXPLAIN'), $crawler->filter('#page-body')->text()); + $this->assertContains('phpBB 3.1 Extension Testing', $crawler->filter('#page-body')->text()); + $this->assertContains('Details', $crawler->filter('#page-body')->text()); } public function test_extensions_details() @@ -94,11 +89,14 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case $this->assert_response_success(); // Test whether the details are displayed - $this->assertContains($this->lang('CLEAN_NAME'), $this->client->getResponse()->getContent()); - $this->assertContains('foo/bar', $this->client->getResponse()->getContent()); + $this->assertContains($this->lang('CLEAN_NAME'), $crawler->filter('#page-body')->text()); + $this->assertContains('foo/bar', $crawler->filter('#page-body')->text()); // Details should be html escaped - $this->assertContains($this->lang('PHP_VERSION'), $this->client->getResponse()->getContent()); + $this->assertContains($this->lang('PHP_VERSION'), $crawler->filter('#page-body')->text()); + // The Crawler parses the text, so we can not see whether it was escaped anymore + // To test this, we grab the content of the response directly + // $this->assertContains('>=5.3', $$crawler->filter('#page-body')->text()); $this->assertContains('>=5.3', $this->client->getResponse()->getContent()); } @@ -108,6 +106,6 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case $this->assert_response_success(); // Error message because the files do not exist - $this->assertContains('The required file does not exist:', $this->client->getResponse()->getContent()); + $this->assertContains('The required file does not exist:', $crawler->filter('#page-body')->text()); } } From 54680b9709ab2288408cbb0ddc7737e93d41de18 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 3 May 2013 15:52:16 +0200 Subject: [PATCH 12/12] [ticket/11450] Limit scopes of filters and add better docs PHPBB3-11450 --- tests/functional/metadata_manager_test.php | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/tests/functional/metadata_manager_test.php b/tests/functional/metadata_manager_test.php index c639cad809..0125886e04 100644 --- a/tests/functional/metadata_manager_test.php +++ b/tests/functional/metadata_manager_test.php @@ -78,9 +78,9 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case $crawler = $this->request('GET', 'adm/index.php?i=acp_extensions&mode=main&sid=' . $this->sid); $this->assert_response_success(); - $this->assertContains($this->lang('EXTENSIONS_EXPLAIN'), $crawler->filter('#page-body')->text()); - $this->assertContains('phpBB 3.1 Extension Testing', $crawler->filter('#page-body')->text()); - $this->assertContains('Details', $crawler->filter('#page-body')->text()); + $this->assertContains($this->lang('EXTENSIONS_EXPLAIN'), $crawler->filter('#main')->text()); + $this->assertContains('phpBB 3.1 Extension Testing', $crawler->filter('#main')->text()); + $this->assertContains('Details', $crawler->filter('#main')->text()); } public function test_extensions_details() @@ -89,15 +89,15 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case $this->assert_response_success(); // Test whether the details are displayed - $this->assertContains($this->lang('CLEAN_NAME'), $crawler->filter('#page-body')->text()); - $this->assertContains('foo/bar', $crawler->filter('#page-body')->text()); + $this->assertContains($this->lang('CLEAN_NAME'), $crawler->filter('#main')->text()); + $this->assertContains('foo/bar', $crawler->filter('#meta_name')->text()); + $this->assertContains($this->lang('PHP_VERSION'), $crawler->filter('#main')->text()); + $this->assertContains('>=5.3', $crawler->filter('#require_php')->text()); // Details should be html escaped - $this->assertContains($this->lang('PHP_VERSION'), $crawler->filter('#page-body')->text()); - // The Crawler parses the text, so we can not see whether it was escaped anymore - // To test this, we grab the content of the response directly - // $this->assertContains('>=5.3', $$crawler->filter('#page-body')->text()); - $this->assertContains('>=5.3', $this->client->getResponse()->getContent()); + // However, text() only returns the displayed text, so HTML Special Chars are decoded. + // So we test this directly on the content of the response. + $this->assertContains('

>=5.3

', $this->client->getResponse()->getContent()); } public function test_extensions_details_notexists() @@ -106,6 +106,6 @@ class phpbb_functional_metadata_manager_test extends phpbb_functional_test_case $this->assert_response_success(); // Error message because the files do not exist - $this->assertContains('The required file does not exist:', $crawler->filter('#page-body')->text()); + $this->assertContains('The required file does not exist:', $crawler->filter('#main')->text()); } }