From 2da97611a72f2d86ffe933f992da3b7d56b28103 Mon Sep 17 00:00:00 2001 From: Marc Alexander Date: Tue, 8 Apr 2014 00:19:18 +0200 Subject: [PATCH 01/14] [ticket/102] Cover moving modules more and fix functional tests B3P-102 --- acp/portal_module.php | 2 ++ tests/acp/move_module_test.php | 14 +++++++++++++- tests/functional/portal_acp_test.php | 22 +++++++++++++++++++++- tests/mock/user.php | 9 +++++++++ 4 files changed, 45 insertions(+), 2 deletions(-) diff --git a/acp/portal_module.php b/acp/portal_module.php index 2898eaa6..1333ba6c 100644 --- a/acp/portal_module.php +++ b/acp/portal_module.php @@ -874,6 +874,7 @@ class portal_module */ public function move_module_up($module_id) { + $updated = false; $module_data = $this->get_move_module_data($module_id); if (($module_data !== false) && ($module_data['module_order'] > 1)) @@ -904,6 +905,7 @@ class portal_module */ public function move_module_down($module_id) { + $updated = false; $module_data = $this->get_move_module_data($module_id); if ($module_data !== false && $this->get_last_module_order($module_data['module_column']) != $module_data['module_order']) diff --git a/tests/acp/move_module_test.php b/tests/acp/move_module_test.php index dd123fd1..82b30487 100644 --- a/tests/acp/move_module_test.php +++ b/tests/acp/move_module_test.php @@ -15,11 +15,13 @@ require_once(dirname(__FILE__) . '/../../acp/portal_module.php'); class phpbb_acp_move_module_test extends \board3\portal\tests\testframework\database_test_case { static public $redirected = false; + static public $error = false; + static public $override_trigger_error = false; public function setUp() { parent::setUp(); - global $db, $cache, $phpbb_root_path, $phpEx, $user, $phpbb_container, $template; + global $db, $cache, $phpbb_root_path, $phpEx, $user, $phpbb_container, $request, $template; $user = new \board3\portal\tests\mock\user(); $phpbb_container = new \phpbb_mock_container_builder(); // Mock version check @@ -55,6 +57,7 @@ class phpbb_acp_move_module_test extends \board3\portal\tests\testframework\data 'UNABLE_TO_MOVE' => 'UNABLE_TO_MOVE', 'UNABLE_TO_MOVE_ROW' => 'UNABLE_TO_MOVE_ROW', )); + $request = new \phpbb_mock_request; $this->portal_module = new \board3\portal\acp\portal_module(); $this->update_portal_modules(); } @@ -283,3 +286,12 @@ function adm_back_link($url) { return $url; } + +function trigger_error($input, $type = E_USER_NOTICE) +{ + if (!phpbb_acp_move_module_test::$override_trigger_error) + { + \trigger_error($input, $type); + } + phpbb_acp_move_module_test::$error = $input; +} diff --git a/tests/functional/portal_acp_test.php b/tests/functional/portal_acp_test.php index e6fd3a55..7740b794 100644 --- a/tests/functional/portal_acp_test.php +++ b/tests/functional/portal_acp_test.php @@ -34,6 +34,26 @@ class phpbb_functional_portal_acp_test extends \board3\portal\tests\testframewor */ public function test_acp_pages($mode) { - $crawler = self::request('GET', 'adm/index.php?i=\board3\portal\acp\portal_module&mode=' . $mode . '&sid=' . $this->sid); + $crawler = self::request('GET', 'adm/index.php?i=\board3\portal\acp\portal_module&mode=' . $mode . '&sid=' . $this->sid); + } + + public function test_move_first_module_up() + { + $crawler = self::request('GET', 'adm/index.php?i=\board3\portal\acp\portal_module&mode=modules&sid=' . $this->sid); + $module_link = $crawler->filter('table')->eq(3)->filter('tr')->eq(1)->filter('a')->eq(0)->attr('href'); + preg_match('/module_id=(?:([0-9]{1,3}))/', $module_link, $output); + $this->assertNotEmpty($output[1]); + $module_id = $output[1]; + $crawler = self::request('GET', 'adm/index.php?i=\board3\portal\acp\portal_module&mode=modules&module_id=' . $module_id . '&action=move_up&sid=' . $this->sid); + } + + public function test_move_last_module_down() + { + $crawler = self::request('GET', 'adm/index.php?i=\board3\portal\acp\portal_module&mode=modules&sid=' . $this->sid); + $module_link = $crawler->filter('table')->eq(3)->filter('tr')->last()->filter('a')->eq(0)->attr('href'); + preg_match('/module_id=(?:([0-9]{1,3}))/', $module_link, $output); + $this->assertNotEmpty($output[1]); + $module_id = $output[1]; + $crawler = self::request('GET', 'adm/index.php?i=\board3\portal\acp\portal_module&mode=modules&module_id=' . $module_id . '&action=move_down&sid=' . $this->sid); } } diff --git a/tests/mock/user.php b/tests/mock/user.php index 8106e5fc..eb603e89 100644 --- a/tests/mock/user.php +++ b/tests/mock/user.php @@ -30,6 +30,15 @@ class user extends \PHPUnit_Framework_TestCase return; // can't support other extensions } + if (is_array($file)) + { + foreach ($file as $cur_file) + { + $this->add_lang_ext($ext, $cur_file); + } + return; + } + if (file_exists(dirname(__FILE__) . '/../../language/en/' . $file . '.php')) { include_once(dirname(__FILE__) . '/../../language/en/' . $file . '.php'); From cd8c30960ec1aaa6ef91d02f24188bd141a26407 Mon Sep 17 00:00:00 2001 From: Marc Alexander Date: Tue, 8 Apr 2014 00:20:27 +0200 Subject: [PATCH 02/14] [ticket/102] Rename acp_portal.js to acp_editor.js B3P-102 --- adm/style/portal/{acp_portal.js => acp_editor.js} | 2 +- adm/style/portal/acp_portal_custom.html | 2 +- adm/style/portal/acp_portal_welcome.html | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) rename adm/style/portal/{acp_portal.js => acp_editor.js} (99%) diff --git a/adm/style/portal/acp_portal.js b/adm/style/portal/acp_editor.js similarity index 99% rename from adm/style/portal/acp_portal.js rename to adm/style/portal/acp_editor.js index 306f7452..5b3b687b 100644 --- a/adm/style/portal/acp_portal.js +++ b/adm/style/portal/acp_editor.js @@ -436,4 +436,4 @@ function getCaretPosition(txtarea) } return caretPos; -} \ No newline at end of file +} diff --git a/adm/style/portal/acp_portal_custom.html b/adm/style/portal/acp_portal_custom.html index 3d7bf66d..5371d2a2 100644 --- a/adm/style/portal/acp_portal_custom.html +++ b/adm/style/portal/acp_portal_custom.html @@ -1,6 +1,6 @@ - +