From a6ff2397788134b5410d89a67a3860a32670997e Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Sat, 13 Jul 2013 12:06:05 -0400 Subject: [feature/oauth] Allow getting original global arrays from request PHPBB3-11673 --- tests/mock/request.php | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'tests') diff --git a/tests/mock/request.php b/tests/mock/request.php index 2a272fc03b..d70dd1eae9 100644 --- a/tests/mock/request.php +++ b/tests/mock/request.php @@ -74,6 +74,11 @@ class phpbb_mock_request implements phpbb_request_interface return array_keys($this->data[$super_global]); } + public function original_global_values($super_global = phpbb_request_interface::REQUEST) + { + return $this->data[$super_global]; + } + /* custom methods */ public function set_header($header_name, $value) -- cgit v1.2.1 From 2e899c24f9248a06eef7b8cfaed7f5b4a792f7fd Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Sat, 13 Jul 2013 12:11:38 -0400 Subject: [feature/oauth] Change name of new method on request PHPBB3-11673 --- tests/mock/request.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/mock/request.php b/tests/mock/request.php index d70dd1eae9..d671621460 100644 --- a/tests/mock/request.php +++ b/tests/mock/request.php @@ -74,7 +74,7 @@ class phpbb_mock_request implements phpbb_request_interface return array_keys($this->data[$super_global]); } - public function original_global_values($super_global = phpbb_request_interface::REQUEST) + public function get_super_global($super_global = phpbb_request_interface::REQUEST) { return $this->data[$super_global]; } -- cgit v1.2.1 From 44a82dd0837a4693b6a4a410c21c438f244094d3 Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Wed, 24 Jul 2013 12:05:04 -0500 Subject: [ticket/11628] Remove style path provider No longer used since Twig was implemented. PHPBB3-11628 --- tests/controller/helper_url_test.php | 5 +-- tests/extension/style_path_provider_test.php | 50 ------------------------- tests/template/template_events_test.php | 4 +- tests/template/template_test_case.php | 6 +-- tests/template/template_test_case_with_tree.php | 4 +- 5 files changed, 4 insertions(+), 65 deletions(-) delete mode 100644 tests/extension/style_path_provider_test.php (limited to 'tests') diff --git a/tests/controller/helper_url_test.php b/tests/controller/helper_url_test.php index 6686b77e8f..29399af77a 100644 --- a/tests/controller/helper_url_test.php +++ b/tests/controller/helper_url_test.php @@ -48,12 +48,9 @@ class phpbb_controller_helper_url_test extends phpbb_test_case global $phpbb_dispatcher, $phpbb_root_path, $phpEx; $phpbb_dispatcher = new phpbb_mock_event_dispatcher; - $this->style_resource_locator = new phpbb_style_resource_locator(); $this->user = $this->getMock('phpbb_user'); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - $this->style_resource_locator = new phpbb_style_resource_locator(); - $this->style_provider = new phpbb_style_path_provider(); - $this->style = new phpbb_style($phpbb_root_path, $phpEx, new phpbb_config(array()), $this->user, $this->style_resource_locator, $this->style_provider, $this->template); + $this->style = new phpbb_style($phpbb_root_path, $phpEx, new phpbb_config(array()), $this->user, $this->template); $helper = new phpbb_controller_helper($this->template, $this->user, '', 'php'); $this->assertEquals($helper->url($route, $params, $is_amp, $session_id), $expected); diff --git a/tests/extension/style_path_provider_test.php b/tests/extension/style_path_provider_test.php deleted file mode 100644 index e1021c20ac..0000000000 --- a/tests/extension/style_path_provider_test.php +++ /dev/null @@ -1,50 +0,0 @@ -relative_root_path = './'; - $this->root_path = dirname(__FILE__) . '/'; - } - - public function test_find() - { - $phpbb_style_path_provider = new phpbb_style_path_provider(); - $phpbb_style_path_provider->set_styles(array($this->relative_root_path . 'styles/prosilver')); - $phpbb_style_extension_path_provider = new phpbb_style_extension_path_provider(new phpbb_mock_extension_manager( - $this->root_path, - array( - 'foo' => array( - 'ext_name' => 'foo', - 'ext_active' => '1', - 'ext_path' => 'ext/foo/', - ), - 'bar' => array( - 'ext_name' => 'bar', - 'ext_active' => '1', - 'ext_path' => 'ext/bar/', - ), - )), $phpbb_style_path_provider, $this->relative_root_path); - - $this->assertEquals(array( - 'style' => array( - $this->relative_root_path . 'styles/prosilver', - ), - 'bar' => array( - $this->root_path . 'ext/bar/styles/prosilver', - ), - ), $phpbb_style_extension_path_provider->find()); - } -} diff --git a/tests/template/template_events_test.php b/tests/template/template_events_test.php index f7bcd2dcc6..c3ebcb8739 100644 --- a/tests/template/template_events_test.php +++ b/tests/template/template_events_test.php @@ -103,13 +103,11 @@ Zeta test event in all', $config = new phpbb_config(array_merge($defaults, $new_config)); $this->template_path = dirname(__FILE__) . "/datasets/$dataset/styles/silver/template"; - $this->style_resource_locator = new phpbb_style_resource_locator(); $this->extension_manager = new phpbb_mock_filesystem_extension_manager( dirname(__FILE__) . "/datasets/$dataset/" ); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context, $this->extension_manager); - $this->style_provider = new phpbb_style_path_provider(); - $this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $this->style_resource_locator, $this->style_provider, $this->template); + $this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $this->template); $this->style->set_custom_style('silver', array($this->template_path), $style_names, ''); } } diff --git a/tests/template/template_test_case.php b/tests/template/template_test_case.php index 6d87e5ebc0..87573a53fe 100644 --- a/tests/template/template_test_case.php +++ b/tests/template/template_test_case.php @@ -14,8 +14,6 @@ class phpbb_template_template_test_case extends phpbb_test_case protected $style; protected $template; protected $template_path; - protected $style_resource_locator; - protected $style_provider; protected $user; protected $test_path = 'tests/template'; @@ -67,10 +65,8 @@ class phpbb_template_template_test_case extends phpbb_test_case $this->user = new phpbb_user; $this->template_path = $this->test_path . '/templates'; - $this->style_resource_locator = new phpbb_style_resource_locator(); - $this->style_provider = new phpbb_style_path_provider(); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - $this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $this->user, $this->style_resource_locator, $this->style_provider, $this->template); + $this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $this->user, $this->template); $this->style->set_custom_style('tests', $this->template_path, array(), ''); } diff --git a/tests/template/template_test_case_with_tree.php b/tests/template/template_test_case_with_tree.php index 4b8cbada45..50a6e9190d 100644 --- a/tests/template/template_test_case_with_tree.php +++ b/tests/template/template_test_case_with_tree.php @@ -20,10 +20,8 @@ class phpbb_template_template_test_case_with_tree extends phpbb_template_templat $this->template_path = $this->test_path . '/templates'; $this->parent_template_path = $this->test_path . '/parent_templates'; - $this->style_resource_locator = new phpbb_style_resource_locator(); - $this->style_provider = new phpbb_style_path_provider(); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context()); - $this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $this->style_resource_locator, $this->style_provider, $this->template); + $this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $this->template); $this->style->set_custom_style('tests', array($this->template_path, $this->parent_template_path), array(), ''); } } -- cgit v1.2.1 From 5d1afb453211d42a8deacb66684c136385918192 Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Wed, 24 Jul 2013 12:24:35 -0500 Subject: [ticket/11628] Remove phpbb_style (move methods to phpbb_template) PHPBB3-11628 --- tests/controller/helper_url_test.php | 1 - tests/template/includephp_test.php | 2 +- tests/template/template_events_test.php | 3 +-- tests/template/template_test.php | 2 +- tests/template/template_test_case.php | 4 +--- tests/template/template_test_case_with_tree.php | 3 +-- 6 files changed, 5 insertions(+), 10 deletions(-) (limited to 'tests') diff --git a/tests/controller/helper_url_test.php b/tests/controller/helper_url_test.php index 29399af77a..fc7d02e9cf 100644 --- a/tests/controller/helper_url_test.php +++ b/tests/controller/helper_url_test.php @@ -50,7 +50,6 @@ class phpbb_controller_helper_url_test extends phpbb_test_case $phpbb_dispatcher = new phpbb_mock_event_dispatcher; $this->user = $this->getMock('phpbb_user'); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - $this->style = new phpbb_style($phpbb_root_path, $phpEx, new phpbb_config(array()), $this->user, $this->template); $helper = new phpbb_controller_helper($this->template, $this->user, '', 'php'); $this->assertEquals($helper->url($route, $params, $is_amp, $session_id), $expected); diff --git a/tests/template/includephp_test.php b/tests/template/includephp_test.php index ff7b890d11..1afa933514 100644 --- a/tests/template/includephp_test.php +++ b/tests/template/includephp_test.php @@ -46,7 +46,7 @@ class phpbb_template_includephp_test extends phpbb_template_template_test_case $this->setup_engine(array('tpl_allow_php' => true)); - $this->style->set_custom_style('tests', $cache_dir, array(), ''); + $this->template->set_custom_style('tests', $cache_dir, array(), ''); $this->run_template('includephp_absolute.html', array(), array(), array(), "Path is absolute.\ntesting included php"); diff --git a/tests/template/template_events_test.php b/tests/template/template_events_test.php index c3ebcb8739..7de3ebbfae 100644 --- a/tests/template/template_events_test.php +++ b/tests/template/template_events_test.php @@ -107,7 +107,6 @@ Zeta test event in all', dirname(__FILE__) . "/datasets/$dataset/" ); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context, $this->extension_manager); - $this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $this->template); - $this->style->set_custom_style('silver', array($this->template_path), $style_names, ''); + $this->template->set_custom_style('silver', array($this->template_path), $style_names, ''); } } diff --git a/tests/template/template_test.php b/tests/template/template_test.php index dd9ba21c26..3989f10229 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -410,7 +410,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case $this->setup_engine(array('tpl_allow_php' => true)); - $this->style->set_custom_style('tests', $cache_dir, array(), ''); + $this->template->set_custom_style('tests', $cache_dir, array(), ''); $this->run_template('php.html', array(), array(), array(), 'test'); } diff --git a/tests/template/template_test_case.php b/tests/template/template_test_case.php index 87573a53fe..f90d291d15 100644 --- a/tests/template/template_test_case.php +++ b/tests/template/template_test_case.php @@ -11,7 +11,6 @@ require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php'; class phpbb_template_template_test_case extends phpbb_test_case { - protected $style; protected $template; protected $template_path; protected $user; @@ -66,8 +65,7 @@ class phpbb_template_template_test_case extends phpbb_test_case $this->template_path = $this->test_path . '/templates'; $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - $this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $this->user, $this->template); - $this->style->set_custom_style('tests', $this->template_path, array(), ''); + $this->template->set_custom_style('tests', $this->template_path, array(), ''); } protected function setUp() diff --git a/tests/template/template_test_case_with_tree.php b/tests/template/template_test_case_with_tree.php index 50a6e9190d..7de719f430 100644 --- a/tests/template/template_test_case_with_tree.php +++ b/tests/template/template_test_case_with_tree.php @@ -21,7 +21,6 @@ class phpbb_template_template_test_case_with_tree extends phpbb_template_templat $this->template_path = $this->test_path . '/templates'; $this->parent_template_path = $this->test_path . '/parent_templates'; $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context()); - $this->style = new phpbb_style($phpbb_root_path, $phpEx, $config, $user, $this->template); - $this->style->set_custom_style('tests', array($this->template_path, $this->parent_template_path), array(), ''); + $this->template->set_custom_style('tests', array($this->template_path, $this->parent_template_path), array(), ''); } } -- cgit v1.2.1 From 4b761f65758c40db4851983fa3a08d354da3323d Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Wed, 24 Jul 2013 12:55:41 -0500 Subject: [ticket/11628] Remove third parameter ($names) from set_custom_style This was basically duplicating functionality. $names would be used if not empty, else array($name) would be used. Merged functionality into the first argument PHPBB3-11628 --- tests/template/includephp_test.php | 2 +- tests/template/template_events_test.php | 2 +- tests/template/template_test.php | 2 +- tests/template/template_test_case.php | 2 +- tests/template/template_test_case_with_tree.php | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) (limited to 'tests') diff --git a/tests/template/includephp_test.php b/tests/template/includephp_test.php index 1afa933514..70e7cea232 100644 --- a/tests/template/includephp_test.php +++ b/tests/template/includephp_test.php @@ -46,7 +46,7 @@ class phpbb_template_includephp_test extends phpbb_template_template_test_case $this->setup_engine(array('tpl_allow_php' => true)); - $this->template->set_custom_style('tests', $cache_dir, array(), ''); + $this->template->set_custom_style('tests', $cache_dir, ''); $this->run_template('includephp_absolute.html', array(), array(), array(), "Path is absolute.\ntesting included php"); diff --git a/tests/template/template_events_test.php b/tests/template/template_events_test.php index 7de3ebbfae..1b2ab38e2b 100644 --- a/tests/template/template_events_test.php +++ b/tests/template/template_events_test.php @@ -107,6 +107,6 @@ Zeta test event in all', dirname(__FILE__) . "/datasets/$dataset/" ); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context, $this->extension_manager); - $this->template->set_custom_style('silver', array($this->template_path), $style_names, ''); + $this->template->set_custom_style(((!empty($style_names)) ? $style_names : 'silver'), array($this->template_path), ''); } } diff --git a/tests/template/template_test.php b/tests/template/template_test.php index 3989f10229..0cc53f4d07 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -410,7 +410,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case $this->setup_engine(array('tpl_allow_php' => true)); - $this->template->set_custom_style('tests', $cache_dir, array(), ''); + $this->template->set_custom_style('tests', $cache_dir, ''); $this->run_template('php.html', array(), array(), array(), 'test'); } diff --git a/tests/template/template_test_case.php b/tests/template/template_test_case.php index f90d291d15..00c89e4501 100644 --- a/tests/template/template_test_case.php +++ b/tests/template/template_test_case.php @@ -65,7 +65,7 @@ class phpbb_template_template_test_case extends phpbb_test_case $this->template_path = $this->test_path . '/templates'; $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - $this->template->set_custom_style('tests', $this->template_path, array(), ''); + $this->template->set_custom_style('tests', $this->template_path, ''); } protected function setUp() diff --git a/tests/template/template_test_case_with_tree.php b/tests/template/template_test_case_with_tree.php index 7de719f430..1a29fd27b0 100644 --- a/tests/template/template_test_case_with_tree.php +++ b/tests/template/template_test_case_with_tree.php @@ -21,6 +21,6 @@ class phpbb_template_template_test_case_with_tree extends phpbb_template_templat $this->template_path = $this->test_path . '/templates'; $this->parent_template_path = $this->test_path . '/parent_templates'; $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context()); - $this->template->set_custom_style('tests', array($this->template_path, $this->parent_template_path), array(), ''); + $this->template->set_custom_style('tests', array($this->template_path, $this->parent_template_path), ''); } } -- cgit v1.2.1 From 12c22585069066957cc3211136ebd480295d4758 Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Wed, 24 Jul 2013 13:25:20 -0500 Subject: [ticket/11628] Remove template_path option on set_custom_style This was set to default 'template/' to append template/ to all the paths, but every location was actually just setting it to '' to not append anything. So removed the option entirely (additional paths can be appended to the paths being sent to the function already) PHPBB3-11628 --- tests/template/includephp_test.php | 2 +- tests/template/template_events_test.php | 2 +- tests/template/template_test.php | 2 +- tests/template/template_test_case.php | 2 +- tests/template/template_test_case_with_tree.php | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) (limited to 'tests') diff --git a/tests/template/includephp_test.php b/tests/template/includephp_test.php index 70e7cea232..a0dd8368cf 100644 --- a/tests/template/includephp_test.php +++ b/tests/template/includephp_test.php @@ -46,7 +46,7 @@ class phpbb_template_includephp_test extends phpbb_template_template_test_case $this->setup_engine(array('tpl_allow_php' => true)); - $this->template->set_custom_style('tests', $cache_dir, ''); + $this->template->set_custom_style('tests', $cache_dir); $this->run_template('includephp_absolute.html', array(), array(), array(), "Path is absolute.\ntesting included php"); diff --git a/tests/template/template_events_test.php b/tests/template/template_events_test.php index 1b2ab38e2b..f0cdeb39c5 100644 --- a/tests/template/template_events_test.php +++ b/tests/template/template_events_test.php @@ -107,6 +107,6 @@ Zeta test event in all', dirname(__FILE__) . "/datasets/$dataset/" ); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context, $this->extension_manager); - $this->template->set_custom_style(((!empty($style_names)) ? $style_names : 'silver'), array($this->template_path), ''); + $this->template->set_custom_style(((!empty($style_names)) ? $style_names : 'silver'), array($this->template_path)); } } diff --git a/tests/template/template_test.php b/tests/template/template_test.php index 0cc53f4d07..2f3ca6e313 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -410,7 +410,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case $this->setup_engine(array('tpl_allow_php' => true)); - $this->template->set_custom_style('tests', $cache_dir, ''); + $this->template->set_custom_style('tests', $cache_dir); $this->run_template('php.html', array(), array(), array(), 'test'); } diff --git a/tests/template/template_test_case.php b/tests/template/template_test_case.php index 00c89e4501..91895502ad 100644 --- a/tests/template/template_test_case.php +++ b/tests/template/template_test_case.php @@ -65,7 +65,7 @@ class phpbb_template_template_test_case extends phpbb_test_case $this->template_path = $this->test_path . '/templates'; $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - $this->template->set_custom_style('tests', $this->template_path, ''); + $this->template->set_custom_style('tests', $this->template_path); } protected function setUp() diff --git a/tests/template/template_test_case_with_tree.php b/tests/template/template_test_case_with_tree.php index 1a29fd27b0..477192c28a 100644 --- a/tests/template/template_test_case_with_tree.php +++ b/tests/template/template_test_case_with_tree.php @@ -21,6 +21,6 @@ class phpbb_template_template_test_case_with_tree extends phpbb_template_templat $this->template_path = $this->test_path . '/templates'; $this->parent_template_path = $this->test_path . '/parent_templates'; $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context()); - $this->template->set_custom_style('tests', array($this->template_path, $this->parent_template_path), ''); + $this->template->set_custom_style('tests', array($this->template_path, $this->parent_template_path)); } } -- cgit v1.2.1 From ce0a1bb3c59e5815e8c39dc9f7b70ca9810df6e3 Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Wed, 24 Jul 2013 13:44:39 -0500 Subject: [ticket/11628] Remove remaining style_path_provider_test PHPBB3-11628 --- tests/extension/subdir/style_path_provider_test.php | 18 ------------------ 1 file changed, 18 deletions(-) delete mode 100644 tests/extension/subdir/style_path_provider_test.php (limited to 'tests') diff --git a/tests/extension/subdir/style_path_provider_test.php b/tests/extension/subdir/style_path_provider_test.php deleted file mode 100644 index 1b5ce62e5f..0000000000 --- a/tests/extension/subdir/style_path_provider_test.php +++ /dev/null @@ -1,18 +0,0 @@ -relative_root_path = '../'; - $this->root_path = dirname(__FILE__) . '/../'; - } -} -- cgit v1.2.1 From 0055ab7ad05258b6739f505515aaa04dd630d1cb Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 24 Jul 2013 15:31:38 -0400 Subject: [feature/oauth] Initial token storage tests PHPBB3-11673 --- tests/auth/fixtures/oauth_tokens.xml | 24 +++++++ tests/auth/provider_oauth_token_storage_test.php | 85 ++++++++++++++++++++++++ 2 files changed, 109 insertions(+) create mode 100644 tests/auth/fixtures/oauth_tokens.xml create mode 100644 tests/auth/provider_oauth_token_storage_test.php (limited to 'tests') diff --git a/tests/auth/fixtures/oauth_tokens.xml b/tests/auth/fixtures/oauth_tokens.xml new file mode 100644 index 0000000000..6bf6d22172 --- /dev/null +++ b/tests/auth/fixtures/oauth_tokens.xml @@ -0,0 +1,24 @@ + + + + user_id + session_id + provider + oauth_token + + 1 + foobar + foobar + $H$9E45lK6J8nLTSm9oJE5aNCSTFK9wqa/ + 0 + 0 + example@example.com + 0 + 0 + + + + + +
+
\ No newline at end of file diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php new file mode 100644 index 0000000000..ba3a8a65f5 --- /dev/null +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -0,0 +1,85 @@ +db = $this->new_dbal(); + $this->user = $this->getMock('phpbb_user'); + $service_name = 'auth.provider.oauth.service.testing'; + $token_storage_table = 'phpbb_oauth_tokens'; + + // Give the user a session_id that we will remember + $this->session_id = '12345'; + $this->user->data['session_id'] = $this->session_id; + + // Set the user id to anonymous + $this->user->data['user_id'] = ANONYMOUS; + + $this->token_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $service_name, $token_storage_table); + } + + public function getDataSet() + { + return $this->createXMLDataSet(dirname(__FILE__).'/fixtures/oauth_tokens.xml'); + } + + public function test_retrieveAccessToken() + { + + } + + public function test_storeAccessToken() + { + $token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ); + $this->token_storage->storeAccessToken($token); + + // Confirm that the token is cached + $extraParams = $this->token_storage->retrieveAccessToken()->getExtraParams(); + $this->assertEquals( 'param', $extraParams['extra'] ); + $this->assertEquals( 'access', $this->token_storage->retrieveAccessToken()->getAccessToken() ); + + // Test that the token is stored in the database + $sql = 'SELECT oauth_token FROM phpbb_oauth_tokens + WHERE session_id = \'' . $this->session_id . '\''; + $result = $this->db->sql_query($sql); + $row = $this->db->sql_fetchrow($result); + $this->db->sql_freeresult($result); + + // The token is serialized before stored in the database + $this->assertEquals(serialize($token), $row['oauth_token']); + } + + public function test_hasAccessToken() + { + + } + + public function test_clearToken() + { + + } + + public function test_set_user_id() + { + + } +} \ No newline at end of file -- cgit v1.2.1 From a72951b79902d6512a1e769e23c394395e930870 Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 24 Jul 2013 15:46:08 -0400 Subject: [feature/oauth] Token Storage retrieve access token test PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 39 +++++++++++++++++++++--- 1 file changed, 35 insertions(+), 4 deletions(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index ba3a8a65f5..e86d1359d9 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -12,8 +12,10 @@ use OAuth\OAuth2\Token\StdOAuth2Token; class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_case { protected $db; + protected $service_name; protected $session_id; protected $token_storage; + protected $token_storage_table; protected $user; protected function setup() @@ -24,8 +26,8 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $this->db = $this->new_dbal(); $this->user = $this->getMock('phpbb_user'); - $service_name = 'auth.provider.oauth.service.testing'; - $token_storage_table = 'phpbb_oauth_tokens'; + $this->service_name = 'auth.provider.oauth.service.testing'; + $this->token_storage_table = 'phpbb_oauth_tokens'; // Give the user a session_id that we will remember $this->session_id = '12345'; @@ -34,7 +36,7 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c // Set the user id to anonymous $this->user->data['user_id'] = ANONYMOUS; - $this->token_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $service_name, $token_storage_table); + $this->token_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); } public function getDataSet() @@ -42,9 +44,38 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c return $this->createXMLDataSet(dirname(__FILE__).'/fixtures/oauth_tokens.xml'); } - public function test_retrieveAccessToken() + public static function retrieveAccessToken_data() { + return array( + array(null, new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param')), null), + array(new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ), null, null), + array(null, null, 'OAuth\Common\Storage\Exception\TokenNotFoundException'), + ); + } + /** + * @dataProvider retrieveAccessToken_data + */ + public function test_retrieveAccessToken($cache_token, $db_token, $exception) + { + if ($db_token) + { + $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); + $temp_storage->storeAccessToken($db_token); + unset($temp_storage); + $token = $db_token; + } + + if ($cache_token) + { + $this->token_storage->storeAccessToken($cache_token); + $token = $cache_token; + } + + $this->setExpectedException($exception); + + $stored_token = $this->token_storage->retrieveAccessToken(); + $this->assertEquals($token, $stored_token); } public function test_storeAccessToken() -- cgit v1.2.1 From 229d4f2fd6e067f95a5766c90e34578d1baaddb8 Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 24 Jul 2013 15:47:06 -0400 Subject: [feature/oauth] Replace spaces with tabs PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index e86d1359d9..2a161bb9cc 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -74,8 +74,8 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $this->setExpectedException($exception); - $stored_token = $this->token_storage->retrieveAccessToken(); - $this->assertEquals($token, $stored_token); + $stored_token = $this->token_storage->retrieveAccessToken(); + $this->assertEquals($token, $stored_token); } public function test_storeAccessToken() @@ -85,13 +85,13 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c // Confirm that the token is cached $extraParams = $this->token_storage->retrieveAccessToken()->getExtraParams(); - $this->assertEquals( 'param', $extraParams['extra'] ); - $this->assertEquals( 'access', $this->token_storage->retrieveAccessToken()->getAccessToken() ); + $this->assertEquals( 'param', $extraParams['extra'] ); + $this->assertEquals( 'access', $this->token_storage->retrieveAccessToken()->getAccessToken() ); - // Test that the token is stored in the database - $sql = 'SELECT oauth_token FROM phpbb_oauth_tokens - WHERE session_id = \'' . $this->session_id . '\''; - $result = $this->db->sql_query($sql); + // Test that the token is stored in the database + $sql = 'SELECT oauth_token FROM phpbb_oauth_tokens + WHERE session_id = \'' . $this->session_id . '\''; + $result = $this->db->sql_query($sql); $row = $this->db->sql_fetchrow($result); $this->db->sql_freeresult($result); -- cgit v1.2.1 From e2ea641cc4301d7fb591da88430b640cc41022c0 Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 24 Jul 2013 15:51:54 -0400 Subject: [feature/oauth] Token storage test set_user_id() PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 26 ++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index 2a161bb9cc..fc4a9af741 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -88,12 +88,7 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $this->assertEquals( 'param', $extraParams['extra'] ); $this->assertEquals( 'access', $this->token_storage->retrieveAccessToken()->getAccessToken() ); - // Test that the token is stored in the database - $sql = 'SELECT oauth_token FROM phpbb_oauth_tokens - WHERE session_id = \'' . $this->session_id . '\''; - $result = $this->db->sql_query($sql); - $row = $this->db->sql_fetchrow($result); - $this->db->sql_freeresult($result); + $row = $this->get_token_row_by_session_id($this->session_id); // The token is serialized before stored in the database $this->assertEquals(serialize($token), $row['oauth_token']); @@ -111,6 +106,25 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c public function test_set_user_id() { + $token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ); + $this->token_storage->storeAccessToken($token); + + $new_user_id = ANONYMOUS + 1; + $this->token_storage->set_user_id($new_user_id); + + $row = $this->get_token_row_by_session_id($this->session_id); + $this->assertEquals($new_user_id, $row['user_id']); + } + + protected function get_token_row_by_session_id($session_id) + { + // Test that the token is stored in the database + $sql = 'SELECT * FROM phpbb_oauth_tokens + WHERE session_id = \'' . $session_id . '\''; + $result = $this->db->sql_query($sql); + $row = $this->db->sql_fetchrow($result); + $this->db->sql_freeresult($result); + return $row; } } \ No newline at end of file -- cgit v1.2.1 From 69d8149a8f9bf5ea6f88a3221cedf8307d88dadf Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 24 Jul 2013 15:52:52 -0400 Subject: [feature/oauth] Clean up oauth_tokens test fixture PHPBB3-11673 --- tests/auth/fixtures/oauth_tokens.xml | 15 --------------- 1 file changed, 15 deletions(-) (limited to 'tests') diff --git a/tests/auth/fixtures/oauth_tokens.xml b/tests/auth/fixtures/oauth_tokens.xml index 6bf6d22172..9f757af715 100644 --- a/tests/auth/fixtures/oauth_tokens.xml +++ b/tests/auth/fixtures/oauth_tokens.xml @@ -5,20 +5,5 @@ session_id provider oauth_token - - 1 - foobar - foobar - $H$9E45lK6J8nLTSm9oJE5aNCSTFK9wqa/ - 0 - 0 - example@example.com - 0 - 0 - - - - - \ No newline at end of file -- cgit v1.2.1 From d1f0ecca453cb80509ba145863195816d8978f41 Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 24 Jul 2013 15:56:52 -0400 Subject: [feature/oauth] Has Access Token test PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index fc4a9af741..eb489410c7 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -94,9 +94,26 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $this->assertEquals(serialize($token), $row['oauth_token']); } - public function test_hasAccessToken() + public static function hasAccessToken_data() { + return array( + array(null, false), + array(new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ), true), + ); + } + + /** + * @dataProvider hasAccessToken_data + */ + public function test_hasAccessToken($token, $expected) + { + if ($token) + { + $this->token_storage->storeAccessToken($token); + } + $has_access_token = $this->token_storage->hasAccessToken(); + $this->assertEquals($expected, $has_access_token); } public function test_clearToken() -- cgit v1.2.1 From c5d2b75022f177ea04dfd0528cd54cd5d95ee16a Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 24 Jul 2013 16:00:18 -0400 Subject: [feature/oauth] Clear token storage test PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index eb489410c7..1d5505ee8e 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -118,7 +118,14 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c public function test_clearToken() { + $token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ); + $this->token_storage->storeAccessToken($token); + $this->token_storage->clearToken(); + + $this->assertFalse($this->token_storage->hasAccessToken()); + $row = $this->get_token_row_by_session_id($this->session_id()); + $this->assertFalse($row); } public function test_set_user_id() -- cgit v1.2.1 From f8dbaa148dccb105133b5a91d58686d79f020afe Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 24 Jul 2013 16:02:33 -0400 Subject: [feature/oauth] Fixes for problems found by tests PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index 1d5505ee8e..fced3184df 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -151,4 +151,4 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c return $row; } -} \ No newline at end of file +} -- cgit v1.2.1 From 5052b80456972a56ef6c631cd61afbe127f47cab Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 24 Jul 2013 16:04:07 -0400 Subject: [feature/oauth] Refactor clear token test to get more useful output first PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index fced3184df..789b642ed5 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -122,10 +122,13 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $this->token_storage->storeAccessToken($token); $this->token_storage->clearToken(); - - $this->assertFalse($this->token_storage->hasAccessToken()); - $row = $this->get_token_row_by_session_id($this->session_id()); + + // Check that the database has been cleared + $row = $this->get_token_row_by_session_id($this->session_id); $this->assertFalse($row); + + // Check that the token is no longer in memory + $this->assertFalse($this->token_storage->hasAccessToken()); } public function test_set_user_id() -- cgit v1.2.1 From a988c7e396283b1b44a6d3a08582b47cc68c8067 Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Fri, 26 Jul 2013 13:08:53 -0500 Subject: [ticket/11744] Create base notification test class for setup PHPBB3-11744 --- tests/notification/base.php | 105 +++++++++++++++++++++++++++++++ tests/notification/notification_test.php | 85 +------------------------ 2 files changed, 107 insertions(+), 83 deletions(-) create mode 100644 tests/notification/base.php (limited to 'tests') diff --git a/tests/notification/base.php b/tests/notification/base.php new file mode 100644 index 0000000000..ab92f88262 --- /dev/null +++ b/tests/notification/base.php @@ -0,0 +1,105 @@ +db = $this->new_dbal(); + $config = $this->config = new phpbb_config(array( + 'allow_privmsg' => true, + 'allow_bookmarks' => true, + 'allow_topic_notify' => true, + 'allow_forum_notify' => true, + )); + $user = $this->user = new phpbb_user(); + $this->user_loader = new phpbb_user_loader($this->db, $phpbb_root_path, $phpEx, 'phpbb_users'); + $auth = $this->auth = new phpbb_mock_notifications_auth(); + $cache = $this->cache = new phpbb_cache_service( + new phpbb_cache_driver_null(), + $this->config, + $this->db, + $phpbb_root_path, + $phpEx + ); + + $phpbb_container = $this->container = new phpbb_mock_container_builder(); + + $this->notifications = new phpbb_notification_manager_helper( + array(), + array(), + $this->container, + $this->user_loader, + $this->db, + $this->cache, + $this->user, + $phpbb_root_path, + $phpEx, + 'phpbb_notification_types', + 'phpbb_notifications', + 'phpbb_user_notifications' + ); + + $phpbb_container->set('notification_manager', $this->notifications); + + $this->notifications->setDependencies($this->auth, $this->config); + + $types = array(); + foreach ($this->get_notification_types() as $type) + { + $class = $this->build_type('phpbb_notification_type_' . $type); + + $types[$type] = $class; + $this->container->set('notification.type.' . $type, $class); + } + + $this->notifications->set_var('notification_types', $types); + } + + protected function build_type($type) + { + global $phpbb_root_path, $phpEx; + + return new $type($this->user_loader, $this->db, $this->cache->get_driver(), $this->user, $this->auth, $this->config, $phpbb_root_path, $phpEx, 'phpbb_notification_types', 'phpbb_notifications', 'phpbb_user_notifications'); + } +} diff --git a/tests/notification/notification_test.php b/tests/notification/notification_test.php index 8f7eb3b8a8..39073c2602 100644 --- a/tests/notification/notification_test.php +++ b/tests/notification/notification_test.php @@ -7,9 +7,9 @@ * */ -require_once dirname(__FILE__) . '/manager_helper.php'; +require_once dirname(__FILE__) . '/base.php'; -class phpbb_notification_test extends phpbb_database_test_case +class phpbb_notification_test extends phpbb_tests_notification_base { protected $notifications, $db, $container, $user, $config, $auth, $cache; @@ -18,87 +18,6 @@ class phpbb_notification_test extends phpbb_database_test_case return $this->createXMLDataSet(dirname(__FILE__) . '/fixtures/notification.xml'); } - protected function setUp() - { - parent::setUp(); - - global $phpbb_root_path, $phpEx; - - include_once(__DIR__ . '/ext/test/notification/type/test.' . $phpEx); - - $this->db = $this->new_dbal(); - $this->config = new phpbb_config(array( - 'allow_privmsg' => true, - 'allow_bookmarks' => true, - 'allow_topic_notify' => true, - 'allow_forum_notify' => true, - )); - $this->user = new phpbb_user(); - $this->user_loader = new phpbb_user_loader($this->db, $phpbb_root_path, $phpEx, 'phpbb_users'); - $this->auth = new phpbb_mock_notifications_auth(); - $this->cache = new phpbb_cache_service( - new phpbb_cache_driver_null(), - $this->config, - $this->db, - $phpbb_root_path, - $phpEx - ); - - $this->container = new phpbb_mock_container_builder(); - - $this->notifications = new phpbb_notification_manager_helper( - array(), - array(), - $this->container, - $this->user_loader, - $this->db, - $this->cache, - $this->user, - $phpbb_root_path, - $phpEx, - 'phpbb_notification_types', - 'phpbb_notifications', - 'phpbb_user_notifications' - ); - - $this->notifications->setDependencies($this->auth, $this->config); - - $types = array(); - foreach (array( - 'test', - 'approve_post', - 'approve_topic', - 'bookmark', - 'disapprove_post', - 'disapprove_topic', - 'pm', - 'post', - 'post_in_queue', - 'quote', - 'report_pm', - 'report_pm_closed', - 'report_post', - 'report_post_closed', - 'topic', - 'topic_in_queue', - ) as $type) - { - $class = $this->build_type('phpbb_notification_type_' . $type); - - $types[$type] = $class; - $this->container->set('notification.type.' . $type, $class); - } - - $this->notifications->set_var('notification_types', $types); - } - - protected function build_type($type) - { - global $phpbb_root_path, $phpEx; - - return new $type($this->user_loader, $this->db, $this->cache->get_driver(), $this->user, $this->auth, $this->config, $phpbb_root_path, $phpEx, 'phpbb_notification_types', 'phpbb_notifications', 'phpbb_user_notifications'); - } - public function test_get_notification_type_id() { // They should be inserted the first time -- cgit v1.2.1 From d6384f89396dc7e8b42c855df2cc1ef49095520b Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Fri, 26 Jul 2013 13:09:24 -0500 Subject: [ticket/11744] Group request test PHPBB3-11744 --- tests/notification/fixtures/group_request.xml | 30 +++++++++ tests/notification/group_request_test.php | 97 +++++++++++++++++++++++++++ 2 files changed, 127 insertions(+) create mode 100644 tests/notification/fixtures/group_request.xml create mode 100644 tests/notification/group_request_test.php (limited to 'tests') diff --git a/tests/notification/fixtures/group_request.xml b/tests/notification/fixtures/group_request.xml new file mode 100644 index 0000000000..1eb73f1e15 --- /dev/null +++ b/tests/notification/fixtures/group_request.xml @@ -0,0 +1,30 @@ + + + + user_id + username + username_clean + user_permissions + user_sig + user_occ + user_interests + + 2 + 2 + 2 + + + + + + + 3 + 3 + 3 + + + + + +
+
diff --git a/tests/notification/group_request_test.php b/tests/notification/group_request_test.php new file mode 100644 index 0000000000..06a5a4baa8 --- /dev/null +++ b/tests/notification/group_request_test.php @@ -0,0 +1,97 @@ +createXMLDataSet(dirname(__FILE__) . '/fixtures/group_request.xml'); + } + + protected function get_notification_types() + { + return array_merge( + parent::get_notification_types(), + array( + 'group_request', + ) + ); + } + + public function test_notifications() + { + global $phpbb_root_path, $phpEx, $phpbb_dispatcher, $phpbb_log; + + include($phpbb_root_path . 'includes/utf/utf_tools.' . $phpEx); + include($phpbb_root_path . 'includes/functions_user.' . $phpEx); + include($phpbb_root_path . 'includes/functions_content.' . $phpEx); + + set_config(false, false, false, $this->config); + + $this->container->set('groupposition.legend', new phpbb_groupposition_legend( + $this->db, + $this->user + )); + $this->container->set('groupposition.teampage', new phpbb_groupposition_teampage( + $this->db, + $this->user, + $this->cache->get_driver() + )); + $phpbb_dispatcher = new phpbb_mock_event_dispatcher; + $phpbb_log = new phpbb_log_null(); + + $this->assertEquals(1, $this->notifications->get_notification_type_id('group_request')); + + $group_id = false; + group_create($group_id, GROUP_OPEN, 'test', 'test group', array()); + + // Add user 1 as group leader + group_user_add($group_id, 2, false, false, false, true, false); + + // Add notifications for group requests for user 1 + //$this->notifications->add_subscription('group_request', 0, '', 2); + + // Add user 2 as pending + group_user_add($group_id, 3, false, false, false, false, true); + + $notifications = $this->notifications->load_notifications(array( + 'count_unread' => true, + 'user_id' => 2, + )); + + $expected = array( + 1 => array( + 'notification_type_id' => 1, + 'item_id' => 3, // user_id of requesting join + 'item_parent_id' => $group_id, + 'user_id' => 2, + 'notification_read' => 0, + 'notification_data' => array( + 'group_name' => 'test', + ), + ), + ); + + $this->assertEquals(sizeof($expected), $notifications['unread_count']); + + $notifications = $notifications['notifications']; + + foreach ($expected as $notification_id => $notification_data) + { + $this->assertEquals($notification_id, $notifications[$notification_id]->notification_id, 'notification_id'); + + foreach ($notification_data as $key => $value) + { + $this->assertEquals($value, $notifications[$notification_id]->$key, $key . ' ' . $notification_id); + } + } + } +} -- cgit v1.2.1 From 03ff0581e0b6397e3cf194f0b021aae732cfccfd Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Fri, 26 Jul 2013 13:10:13 -0500 Subject: [ticket/11744] Cleanup PHPBB3-11744 --- tests/notification/group_request_test.php | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/notification/group_request_test.php b/tests/notification/group_request_test.php index 06a5a4baa8..25c5406000 100644 --- a/tests/notification/group_request_test.php +++ b/tests/notification/group_request_test.php @@ -48,6 +48,8 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas $phpbb_dispatcher = new phpbb_mock_event_dispatcher; $phpbb_log = new phpbb_log_null(); + // Now on to the actual test + $this->assertEquals(1, $this->notifications->get_notification_type_id('group_request')); $group_id = false; @@ -56,9 +58,6 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas // Add user 1 as group leader group_user_add($group_id, 2, false, false, false, true, false); - // Add notifications for group requests for user 1 - //$this->notifications->add_subscription('group_request', 0, '', 2); - // Add user 2 as pending group_user_add($group_id, 3, false, false, false, false, true); -- cgit v1.2.1 From 9573b36b3278aa374a7ea4fa72e6a81c459623b2 Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Fri, 26 Jul 2013 13:23:33 -0500 Subject: [ticket/11744] Include once PHPBB3-11744 --- tests/notification/group_request_test.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/notification/group_request_test.php b/tests/notification/group_request_test.php index 25c5406000..dffdc771b1 100644 --- a/tests/notification/group_request_test.php +++ b/tests/notification/group_request_test.php @@ -30,9 +30,9 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas { global $phpbb_root_path, $phpEx, $phpbb_dispatcher, $phpbb_log; - include($phpbb_root_path . 'includes/utf/utf_tools.' . $phpEx); - include($phpbb_root_path . 'includes/functions_user.' . $phpEx); - include($phpbb_root_path . 'includes/functions_content.' . $phpEx); + include_once($phpbb_root_path . 'includes/utf/utf_tools.' . $phpEx); + include_once($phpbb_root_path . 'includes/functions_user.' . $phpEx); + include_once($phpbb_root_path . 'includes/functions_content.' . $phpEx); set_config(false, false, false, $this->config); -- cgit v1.2.1 From 185d4e112e2f1d01364aad36eb540294fa7c953b Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Fri, 26 Jul 2013 14:11:42 -0500 Subject: [ticket/11744] Fix functional test case that's failing PHPBB3-11744 --- tests/test_framework/phpbb_functional_test_case.php | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'tests') diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index de3611c4cc..d1dab4c148 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -533,12 +533,9 @@ class phpbb_functional_test_case extends phpbb_test_case $cache = new phpbb_mock_null_cache; $cache_driver = new phpbb_cache_driver_null(); - $phpbb_container = $this->getMock('Symfony\Component\DependencyInjection\ContainerInterface'); - $phpbb_container - ->expects($this->any()) - ->method('get') - ->with('cache.driver') - ->will($this->returnValue($cache_driver)); + $phpbb_container = new phpbb_mock_container_builder(); + $phpbb_container->set('cache.driver', $cache_driver); + $phpbb_container->set('notification_manager', new phpbb_mock_notification_manager()); if (!function_exists('utf_clean_string')) { -- cgit v1.2.1 From 4f0dd9a752c79004acdfbedce92234c6818b9765 Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Fri, 26 Jul 2013 14:51:46 -0500 Subject: [ticket/11744] Tables are not truncated in some dbms during tests PHPBB3-11744 --- tests/notification/group_request_test.php | 3 --- tests/notification/notification_test.php | 16 ++++++++-------- 2 files changed, 8 insertions(+), 11 deletions(-) (limited to 'tests') diff --git a/tests/notification/group_request_test.php b/tests/notification/group_request_test.php index dffdc771b1..d36864cc27 100644 --- a/tests/notification/group_request_test.php +++ b/tests/notification/group_request_test.php @@ -50,8 +50,6 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas // Now on to the actual test - $this->assertEquals(1, $this->notifications->get_notification_type_id('group_request')); - $group_id = false; group_create($group_id, GROUP_OPEN, 'test', 'test group', array()); @@ -68,7 +66,6 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas $expected = array( 1 => array( - 'notification_type_id' => 1, 'item_id' => 3, // user_id of requesting join 'item_parent_id' => $group_id, 'user_id' => 2, diff --git a/tests/notification/notification_test.php b/tests/notification/notification_test.php index 39073c2602..94453fe201 100644 --- a/tests/notification/notification_test.php +++ b/tests/notification/notification_test.php @@ -21,14 +21,14 @@ class phpbb_notification_test extends phpbb_tests_notification_base public function test_get_notification_type_id() { // They should be inserted the first time - $this->assertEquals(1, $this->notifications->get_notification_type_id('post')); - $this->assertEquals(2, $this->notifications->get_notification_type_id('quote')); - $this->assertEquals(3, $this->notifications->get_notification_type_id('test')); + $post_type_id = $this->notifications->get_notification_type_id('post'); + $quote_type_id = $this->notifications->get_notification_type_id('quote'); + $test_type_id = $this->notifications->get_notification_type_id('test'); $this->assertEquals(array( - 'test' => 3, - 'quote' => 2, - 'post' => 1, + 'test' => $test_type_id, + 'quote' => $quote_type_id, + 'post' => $post_type_id, ), $this->notifications->get_notification_type_ids(array( 'test', @@ -36,11 +36,11 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'post', ) )); - $this->assertEquals(2, $this->notifications->get_notification_type_id('quote')); + $this->assertEquals($quote_type_id, $this->notifications->get_notification_type_id('quote')); try { - $this->assertEquals(3, $this->notifications->get_notification_type_id('fail')); + $this->assertEquals(false, $this->notifications->get_notification_type_id('fail')); $this->fail('Non-existent type should throw an exception'); } -- cgit v1.2.1 From f2ad22439fd0a5ea47bd2d4ee22c51f663949a8b Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Fri, 26 Jul 2013 15:00:45 -0500 Subject: [ticket/11744] Empty notifications tables after testing them PHPBB3-11744 --- tests/notification/base.php | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'tests') diff --git a/tests/notification/base.php b/tests/notification/base.php index ab92f88262..3560ac6fcd 100644 --- a/tests/notification/base.php +++ b/tests/notification/base.php @@ -96,6 +96,15 @@ abstract class phpbb_tests_notification_base extends phpbb_database_test_case $this->notifications->set_var('notification_types', $types); } + protected function tearDown() + { + $this->db->sql_query('DELETE FROM phpbb_notification_types'); + $this->db->sql_query('DELETE FROM phpbb_notifications'); + $this->db->sql_query('DELETE FROM phpbb_user_notifications'); + + parent::tearDown(); + } + protected function build_type($type) { global $phpbb_root_path, $phpEx; -- cgit v1.2.1 From 7dd16f4148890a2c1f52eeb9c660afe2fb85d23c Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Fri, 26 Jul 2013 15:44:49 -0500 Subject: [ticket/11744] spelling PHPBB3-11744 --- tests/test_framework/phpbb_database_test_connection_manager.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/test_framework/phpbb_database_test_connection_manager.php b/tests/test_framework/phpbb_database_test_connection_manager.php index c93a777701..9d2cfebd29 100644 --- a/tests/test_framework/phpbb_database_test_connection_manager.php +++ b/tests/test_framework/phpbb_database_test_connection_manager.php @@ -138,7 +138,7 @@ class phpbb_database_test_connection_manager catch (PDOException $e) { $cleaned_dsn = str_replace($this->config['dbpasswd'], '*password*', $dsn); - throw new Exception("Unable do connect to $cleaned_dsn using PDO with error: {$e->getMessage()}"); + throw new Exception("Unable to connect to $cleaned_dsn using PDO with error: {$e->getMessage()}"); } $this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); -- cgit v1.2.1 From 49c6e835605a6f36c050cda2e92646941668e415 Mon Sep 17 00:00:00 2001 From: Nathaniel Guse Date: Fri, 26 Jul 2013 17:27:52 -0500 Subject: [ticket/11744] Fix tests for postgresql PHPBB3-11744 --- tests/notification/base.php | 5 --- tests/notification/group_request_test.php | 16 ++++----- tests/notification/notification_test.php | 60 ++++++++++++------------------- 3 files changed, 31 insertions(+), 50 deletions(-) (limited to 'tests') diff --git a/tests/notification/base.php b/tests/notification/base.php index 3560ac6fcd..f8c39934bb 100644 --- a/tests/notification/base.php +++ b/tests/notification/base.php @@ -94,15 +94,10 @@ abstract class phpbb_tests_notification_base extends phpbb_database_test_case } $this->notifications->set_var('notification_types', $types); - } - protected function tearDown() - { $this->db->sql_query('DELETE FROM phpbb_notification_types'); $this->db->sql_query('DELETE FROM phpbb_notifications'); $this->db->sql_query('DELETE FROM phpbb_user_notifications'); - - parent::tearDown(); } protected function build_type($type) diff --git a/tests/notification/group_request_test.php b/tests/notification/group_request_test.php index d36864cc27..d61c4adf38 100644 --- a/tests/notification/group_request_test.php +++ b/tests/notification/group_request_test.php @@ -65,7 +65,7 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas )); $expected = array( - 1 => array( + array( 'item_id' => 3, // user_id of requesting join 'item_parent_id' => $group_id, 'user_id' => 2, @@ -78,16 +78,16 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas $this->assertEquals(sizeof($expected), $notifications['unread_count']); - $notifications = $notifications['notifications']; - - foreach ($expected as $notification_id => $notification_data) + $i = 0; + foreach ($notifications['notifications'] as $notification) { - $this->assertEquals($notification_id, $notifications[$notification_id]->notification_id, 'notification_id'); - - foreach ($notification_data as $key => $value) + foreach ($expected[$i] as $notification_data) { - $this->assertEquals($value, $notifications[$notification_id]->$key, $key . ' ' . $notification_id); + $this->assertEquals($value, $notification->$key, $key . ' ' . $i); } + + $i++; } + } } diff --git a/tests/notification/notification_test.php b/tests/notification/notification_test.php index 94453fe201..b8dc9a9042 100644 --- a/tests/notification/notification_test.php +++ b/tests/notification/notification_test.php @@ -165,8 +165,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base )); $expected = array( - 1 => array( - 'notification_type_id' => 4, + array( 'item_id' => 1, 'item_parent_id' => 1, 'user_id' => 0, @@ -174,8 +173,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'notification_time' => 1349413321, 'notification_data' => array(), ), - 2 => array( - 'notification_type_id' => 4, + array( 'item_id' => 2, 'item_parent_id' => 2, 'user_id' => 0, @@ -183,8 +181,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'notification_time' => 1349413322, 'notification_data' => array(), ), - 3 => array( - 'notification_type_id' => 4, + array( 'item_id' => 3, 'item_parent_id' => 2, 'user_id' => 0, @@ -192,8 +189,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'notification_time' => 1349413323, 'notification_data' => array(), ), - 4 => array( - 'notification_type_id' => 3, + array( 'item_id' => 4, 'item_parent_id' => 2, 'user_id' => 0, @@ -208,8 +204,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'forum_name' => 'Your first forum', ), ), - 5 => array( - 'notification_type_id' => 2, + array( 'item_id' => 5, 'item_parent_id' => 2, 'user_id' => 0, @@ -228,18 +223,15 @@ class phpbb_notification_test extends phpbb_tests_notification_base $this->assertEquals(sizeof($expected), $notifications['unread_count']); - $notifications = $notifications['notifications']; - - foreach ($expected as $notification_id => $notification_data) + $i = 0; + foreach ($notifications['notifications'] as $notification) { - //echo $notifications[$notification_id]; - - $this->assertEquals($notification_id, $notifications[$notification_id]->notification_id, 'notification_id'); - - foreach ($notification_data as $key => $value) + foreach ($expected[$i] as $notification_data) { - $this->assertEquals($value, $notifications[$notification_id]->$key, $key . ' ' . $notification_id); + $this->assertEquals($value, $notification->$key, $key . ' ' . $i); } + + $i++; } // Now test updating ------------------------------- @@ -271,8 +263,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base )); $expected = array( - 1 => array( - 'notification_type_id' => 4, + array( 'item_id' => 1, 'item_parent_id' => 2, 'user_id' => 0, @@ -280,8 +271,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'notification_time' => 1349413321, 'notification_data' => array(), ), - 2 => array( - 'notification_type_id' => 4, + array( 'item_id' => 2, 'item_parent_id' => 2, 'user_id' => 0, @@ -289,7 +279,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'notification_time' => 1349413322, 'notification_data' => array(), ), - 3 => array( + array( 'notification_type_id' => 4, 'item_id' => 3, 'item_parent_id' => 2, @@ -298,8 +288,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'notification_time' => 1234, 'notification_data' => array(), ), - 4 => array( - 'notification_type_id' => 3, + array( 'item_id' => 4, 'item_parent_id' => 2, 'user_id' => 0, @@ -314,8 +303,7 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'forum_name' => 'Your first forum', ), ), - 5 => array( - 'notification_type_id' => 2, + array( 'item_id' => 5, 'item_parent_id' => 2, 'user_id' => 0, @@ -334,18 +322,16 @@ class phpbb_notification_test extends phpbb_tests_notification_base $this->assertEquals(sizeof($expected), $notifications['unread_count']); - $notifications = $notifications['notifications']; - - foreach ($expected as $notification_id => $notification_data) + $i = 0; + foreach ($notifications['notifications'] as $notification) { - //echo $notifications[$notification_id]; - - $this->assertEquals($notification_id, $notifications[$notification_id]->notification_id, 'notification_id'); - - foreach ($notification_data as $key => $value) + foreach ($expected[$i] as $notification_data) { - $this->assertEquals($value, $notifications[$notification_id]->$key, $key . ' ' . $notification_id); + $this->assertEquals($value, $notification->$key, $key . ' ' . $i); } + + $i++; } + } } -- cgit v1.2.1 From 7cfb04690de08b10752b8881f918ce9e476bb6ab Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Sat, 27 Jul 2013 09:07:23 -0500 Subject: [ticket/11744] Copyright year PHPBB3-11744 --- tests/notification/base.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/notification/base.php b/tests/notification/base.php index f8c39934bb..5ef6fcebad 100644 --- a/tests/notification/base.php +++ b/tests/notification/base.php @@ -2,7 +2,7 @@ /** * * @package testing -* @copyright (c) 2012 phpBB Group +* @copyright (c) 2013 phpBB Group * @license http://opensource.org/licenses/gpl-2.0.php GNU General Public License v2 * */ -- cgit v1.2.1 From 359aedf664b41d553665d62243d7943293b79d96 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Sat, 27 Jul 2013 19:31:31 -0500 Subject: [ticket/11744] Helper function to assert notifications in base test This also fixes tests PHPBB3-11744 --- tests/notification/base.php | 22 +++ tests/notification/group_request_test.php | 43 ++---- tests/notification/notification_test.php | 248 +++++++++++++----------------- 3 files changed, 145 insertions(+), 168 deletions(-) (limited to 'tests') diff --git a/tests/notification/base.php b/tests/notification/base.php index 5ef6fcebad..8de162a1fb 100644 --- a/tests/notification/base.php +++ b/tests/notification/base.php @@ -106,4 +106,26 @@ abstract class phpbb_tests_notification_base extends phpbb_database_test_case return new $type($this->user_loader, $this->db, $this->cache->get_driver(), $this->user, $this->auth, $this->config, $phpbb_root_path, $phpEx, 'phpbb_notification_types', 'phpbb_notifications', 'phpbb_user_notifications'); } + + protected function assert_notifications($expected, $options = array()) + { + $notifications = $this->notifications->load_notifications(array_merge(array( + 'count_unread' => true, + 'order_by' => 'notification_time', + 'order_dir' => 'ASC', + ), $options)); + + $this->assertEquals(sizeof($expected), $notifications['unread_count']); + + $i = 0; + foreach ($notifications['notifications'] as $notification) + { + foreach ($expected[$i] as $key => $value) + { + $this->assertEquals($value, $notification->$key, $i . ' ' . $key); + } + + $i++; + } + } } diff --git a/tests/notification/group_request_test.php b/tests/notification/group_request_test.php index d61c4adf38..3606a6455c 100644 --- a/tests/notification/group_request_test.php +++ b/tests/notification/group_request_test.php @@ -53,41 +53,28 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas $group_id = false; group_create($group_id, GROUP_OPEN, 'test', 'test group', array()); - // Add user 1 as group leader + // Add user 2 as group leader group_user_add($group_id, 2, false, false, false, true, false); - // Add user 2 as pending + // Add user 3 as pending group_user_add($group_id, 3, false, false, false, false, true); - $notifications = $this->notifications->load_notifications(array( - 'count_unread' => true, - 'user_id' => 2, - )); - - $expected = array( + $this->assert_notifications( array( - 'item_id' => 3, // user_id of requesting join - 'item_parent_id' => $group_id, - 'user_id' => 2, - 'notification_read' => 0, - 'notification_data' => array( - 'group_name' => 'test', + // user 3 pending notification + array( + 'item_id' => 3, // user_id of requesting join + 'item_parent_id' => $group_id, + 'user_id' => 2, + 'notification_read' => 0, + 'notification_data' => array( + 'group_name' => 'test', + ), ), ), + array( + 'user_id' => 2, + ) ); - - $this->assertEquals(sizeof($expected), $notifications['unread_count']); - - $i = 0; - foreach ($notifications['notifications'] as $notification) - { - foreach ($expected[$i] as $notification_data) - { - $this->assertEquals($value, $notification->$key, $key . ' ' . $i); - } - - $i++; - } - } } diff --git a/tests/notification/notification_test.php b/tests/notification/notification_test.php index b8dc9a9042..e1788e8670 100644 --- a/tests/notification/notification_test.php +++ b/tests/notification/notification_test.php @@ -160,80 +160,65 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'post_time' => 1349413326, )); - $notifications = $this->notifications->load_notifications(array( - 'count_unread' => true, - )); - - $expected = array( + $this->assert_notifications( array( - 'item_id' => 1, - 'item_parent_id' => 1, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1349413321, - 'notification_data' => array(), - ), - array( - 'item_id' => 2, - 'item_parent_id' => 2, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1349413322, - 'notification_data' => array(), - ), - array( - 'item_id' => 3, - 'item_parent_id' => 2, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1349413323, - 'notification_data' => array(), - ), - array( - 'item_id' => 4, - 'item_parent_id' => 2, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1349413324, - 'notification_data' => array( - 'poster_id' => 2, - 'topic_title' => 'test-title', - 'post_subject' => 'Re: test-title', - 'post_username' => '', - 'forum_id' => 2, - 'forum_name' => 'Your first forum', + array( + 'item_id' => 1, + 'item_parent_id' => 1, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1349413321, + 'notification_data' => array(), ), - ), - array( - 'item_id' => 5, - 'item_parent_id' => 2, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1349413325, - 'notification_data' => array( - 'poster_id' => 2, - 'topic_title' => 'test-title', - 'post_subject' => 'Re: test-title', - 'post_username' => '', - 'forum_id' => 2, - 'forum_name' => 'Your first forum', + array( + 'item_id' => 2, + 'item_parent_id' => 2, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1349413322, + 'notification_data' => array(), ), - ), + array( + 'item_id' => 3, + 'item_parent_id' => 2, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1349413323, + 'notification_data' => array(), + ), + array( + 'item_id' => 4, + 'item_parent_id' => 2, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1349413324, + 'notification_data' => array( + 'poster_id' => 2, + 'topic_title' => 'test-title', + 'post_subject' => 'Re: test-title', + 'post_username' => '', + 'forum_id' => 2, + 'forum_name' => 'Your first forum', + ), + ), + array( + 'item_id' => 5, + 'item_parent_id' => 2, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1349413325, + 'notification_data' => array( + 'poster_id' => 2, + 'topic_title' => 'test-title', + 'post_subject' => 'Re: test-title', + 'post_username' => '', + 'forum_id' => 2, + 'forum_name' => 'Your first forum', + ), + ), + ) ); - $this->assertEquals(sizeof($expected), $notifications['unread_count']); - - $i = 0; - foreach ($notifications['notifications'] as $notification) - { - foreach ($expected[$i] as $notification_data) - { - $this->assertEquals($value, $notification->$key, $key . ' ' . $i); - } - - $i++; - } - // Now test updating ------------------------------- $this->notifications->update_notifications('test', array( @@ -258,80 +243,63 @@ class phpbb_notification_test extends phpbb_tests_notification_base 'forum_name' => 'Your second forum', // change forum_name )); - $notifications = $this->notifications->load_notifications(array( - 'count_unread' => true, - )); - - $expected = array( - array( - 'item_id' => 1, - 'item_parent_id' => 2, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1349413321, - 'notification_data' => array(), - ), - array( - 'item_id' => 2, - 'item_parent_id' => 2, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1349413322, - 'notification_data' => array(), - ), + $this->assert_notifications( array( - 'notification_type_id' => 4, - 'item_id' => 3, - 'item_parent_id' => 2, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1234, - 'notification_data' => array(), - ), - array( - 'item_id' => 4, - 'item_parent_id' => 2, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1349413324, - 'notification_data' => array( - 'poster_id' => 2, - 'topic_title' => 'test-title', - 'post_subject' => 'Re: test-title', - 'post_username' => '', - 'forum_id' => 2, - 'forum_name' => 'Your first forum', + array( + 'item_id' => 3, + 'item_parent_id' => 2, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1234, + 'notification_data' => array(), ), - ), - array( - 'item_id' => 5, - 'item_parent_id' => 2, - 'user_id' => 0, - 'notification_read' => 0, - 'notification_time' => 1349413325, - 'notification_data' => array( - 'poster_id' => 2, - 'topic_title' => 'test-title2', - 'post_subject' => 'Re: test-title2', - 'post_username' => '', - 'forum_id' => 3, - 'forum_name' => 'Your second forum', + array( + 'item_id' => 1, + 'item_parent_id' => 2, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1349413321, + 'notification_data' => array(), ), - ), + array( + 'item_id' => 2, + 'item_parent_id' => 2, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1349413322, + 'notification_data' => array(), + ), + array( + 'item_id' => 4, + 'item_parent_id' => 2, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1349413324, + 'notification_data' => array( + 'poster_id' => 2, + 'topic_title' => 'test-title', + 'post_subject' => 'Re: test-title', + 'post_username' => '', + 'forum_id' => 2, + 'forum_name' => 'Your first forum', + ), + ), + array( + 'item_id' => 5, + 'item_parent_id' => 2, + 'user_id' => 0, + 'notification_read' => 0, + 'notification_time' => 1349413325, + 'notification_data' => array( + 'poster_id' => 2, + 'topic_title' => 'test-title2', + 'post_subject' => 'Re: test-title2', + 'post_username' => '', + 'forum_id' => 3, + 'forum_name' => 'Your second forum', + ), + ), + ) ); - - $this->assertEquals(sizeof($expected), $notifications['unread_count']); - - $i = 0; - foreach ($notifications['notifications'] as $notification) - { - foreach ($expected[$i] as $notification_data) - { - $this->assertEquals($value, $notification->$key, $key . ' ' . $i); - } - - $i++; - } - } } -- cgit v1.2.1 From 97204e432b8ff1c91294169d6fc0d822ef180bf1 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Sat, 27 Jul 2013 19:32:51 -0500 Subject: [ticket/11745] Add test for group request approved PHPBB3-11745 --- tests/notification/group_request_test.php | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'tests') diff --git a/tests/notification/group_request_test.php b/tests/notification/group_request_test.php index 3606a6455c..368e4ae973 100644 --- a/tests/notification/group_request_test.php +++ b/tests/notification/group_request_test.php @@ -22,6 +22,7 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas parent::get_notification_types(), array( 'group_request', + 'group_request_approved', ) ); } @@ -76,5 +77,33 @@ class phpbb_notification_group_request_test extends phpbb_tests_notification_bas 'user_id' => 2, ) ); + + // Approve user 3 joining the group + group_user_attributes('approve', $group_id, array(3)); + + // user 3 pending notification should have been deleted + $this->assert_notifications( + array(), + array( + 'user_id' => 2, + ) + ); + + $this->assert_notifications( + array( + // user 3 approved notification + array( + 'item_id' => $group_id, // user_id of requesting join + 'user_id' => 3, + 'notification_read' => 0, + 'notification_data' => array( + 'group_name' => 'test', + ), + ), + ), + array( + 'user_id' => 3, + ) + ); } } -- cgit v1.2.1 From d5c56c5d503ea4b12852866e2d3b956e92a92aea Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Sat, 27 Jul 2013 20:02:03 -0500 Subject: [ticket/11724] Support "ELSE IF" and "ELSEIF" in the same way PHPBB3-11724 --- tests/template/template_test.php | 7 +++++++ tests/template/templates/if.html | 2 ++ 2 files changed, 9 insertions(+) (limited to 'tests') diff --git a/tests/template/template_test.php b/tests/template/template_test.php index dd9ba21c26..2a40107d90 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -62,6 +62,13 @@ class phpbb_template_template_test extends phpbb_template_template_test_case array(), '1!false', ), + array( + 'if.html', + array('S_OTHER_OTHER_VALUE' => true), + array(), + array(), + '|S_OTHER_OTHER_VALUE|!false', + ), array( 'if.html', array('S_VALUE' => false, 'S_OTHER_VALUE' => true), diff --git a/tests/template/templates/if.html b/tests/template/templates/if.html index c010aff7fa..f6ab6e575a 100644 --- a/tests/template/templates/if.html +++ b/tests/template/templates/if.html @@ -2,6 +2,8 @@ 1 2 + +|S_OTHER_OTHER_VALUE| 03 -- cgit v1.2.1 From 17d774af8ed8895c0f9b77d57c218f0d01d761e3 Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Mon, 29 Jul 2013 14:32:11 -0400 Subject: [feature/oauth] Add tests for the new token methods PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 40 ++++++++++++++++++++++++ 1 file changed, 40 insertions(+) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index 789b642ed5..a0a8a36f47 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -78,6 +78,32 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $this->assertEquals($token, $stored_token); } + /** + * @dataProvider retrieveAccessToken_data + */ + public function test_retrieve_access_token_by_session($cache_token, $db_token, $exception) + { + if ($db_token) + { + $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); + $temp_storage->storeAccessToken($db_token); + unset($temp_storage); + $token = $db_token; + } + + if ($cache_token) + { + $this->token_storage->storeAccessToken($cache_token); + $token = $cache_token; + } + + $this->setExpectedException($exception); + + $stored_token = $this->token_storage->retrieve_access_token_by_session(); + $this->assertEquals($token, $stored_token); + } + + public function test_storeAccessToken() { $token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ); @@ -116,6 +142,20 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $this->assertEquals($expected, $has_access_token); } + /** + * @dataProvider hasAccessToken_data + */ + public function test_has_access_token_by_session($token, $expected) + { + if ($token) + { + $this->token_storage->storeAccessToken($token); + } + + $has_access_token = $this->token_storage->has_access_token_by_session(); + $this->assertEquals($expected, $has_access_token); + } + public function test_clearToken() { $token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ); -- cgit v1.2.1 From 381e7c347b0d7cfc0f02d677aa61b92701606504 Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Thu, 1 Aug 2013 21:44:51 -0400 Subject: [feature/oauth] Forgot new line character PHPBB3-11673 --- tests/auth/fixtures/oauth_tokens.xml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/auth/fixtures/oauth_tokens.xml b/tests/auth/fixtures/oauth_tokens.xml index 9f757af715..9bfb5a4422 100644 --- a/tests/auth/fixtures/oauth_tokens.xml +++ b/tests/auth/fixtures/oauth_tokens.xml @@ -6,4 +6,5 @@ provider oauth_token - \ No newline at end of file + + -- cgit v1.2.1 From a6e69f377bb436fe59eed9fdedc0cd735d8d8ce9 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Thu, 8 Aug 2013 23:33:26 +0200 Subject: [ticket/11775] Backport moving of the posting functions to 3.0 PHPBB3-11775 --- tests/functional/posting_test.php | 101 ---------------- .../test_framework/phpbb_functional_test_case.php | 131 +++++++++++++++++++++ 2 files changed, 131 insertions(+), 101 deletions(-) (limited to 'tests') diff --git a/tests/functional/posting_test.php b/tests/functional/posting_test.php index 9bcfcc2fda..7fd1e4fdcf 100644 --- a/tests/functional/posting_test.php +++ b/tests/functional/posting_test.php @@ -32,105 +32,4 @@ class phpbb_functional_posting_test extends phpbb_functional_test_case $crawler = self::request('GET', "posting.php?mode=quote&f=2&t={$post2['topic_id']}&p={$post2['post_id']}&sid={$this->sid}"); $this->assertContains('This is a test post posted by the testing framework.', $crawler->filter('html')->text()); } - - /** - * Creates a topic - * - * Be sure to login before creating - * - * @param int $forum_id - * @param string $subject - * @param string $message - * @param array $additional_form_data Any additional form data to be sent in the request - * @return array post_id, topic_id - */ - public function create_topic($forum_id, $subject, $message, $additional_form_data = array()) - { - $posting_url = "posting.php?mode=post&f={$forum_id}&sid={$this->sid}"; - - $form_data = array_merge(array( - 'subject' => $subject, - 'message' => $message, - 'post' => true, - ), $additional_form_data); - - return self::submit_post($posting_url, 'POST_TOPIC', $form_data); - } - - /** - * Creates a post - * - * Be sure to login before creating - * - * @param int $forum_id - * @param string $subject - * @param string $message - * @param array $additional_form_data Any additional form data to be sent in the request - * @return array post_id, topic_id - */ - public function create_post($forum_id, $topic_id, $subject, $message, $additional_form_data = array()) - { - $posting_url = "posting.php?mode=reply&f={$forum_id}&t={$topic_id}&sid={$this->sid}"; - - $form_data = array_merge(array( - 'subject' => $subject, - 'message' => $message, - 'post' => true, - ), $additional_form_data); - - return self::submit_post($posting_url, 'POST_REPLY', $form_data); - } - - /** - * Helper for submitting posts - * - * @param string $posting_url - * @param string $posting_contains - * @param array $form_data - * @return array post_id, topic_id - */ - protected function submit_post($posting_url, $posting_contains, $form_data) - { - $this->add_lang('posting'); - - $crawler = self::request('GET', $posting_url); - $this->assertContains($this->lang($posting_contains), $crawler->filter('html')->text()); - - $hidden_fields = array( - $crawler->filter('[type="hidden"]')->each(function ($node, $i) { - return array('name' => $node->getAttribute('name'), 'value' => $node->getAttribute('value')); - }), - ); - - foreach ($hidden_fields as $fields) - { - foreach($fields as $field) - { - $form_data[$field['name']] = $field['value']; - } - } - - // Bypass time restriction that said that if the lastclick time (i.e. time when the form was opened) - // is not at least 2 seconds before submission, cancel the form - $form_data['lastclick'] = 0; - - // I use a request because the form submission method does not allow you to send data that is not - // contained in one of the actual form fields that the browser sees (i.e. it ignores "hidden" inputs) - // Instead, I send it as a request with the submit button "post" set to true. - $crawler = self::request('POST', $posting_url, $form_data); - $this->assertContains($this->lang('POST_STORED'), $crawler->filter('html')->text()); - - $url = $crawler->selectLink($this->lang('VIEW_MESSAGE', '', ''))->link()->getUri(); - - $matches = $topic_id = $post_id = false; - preg_match_all('#&t=([0-9]+)(&p=([0-9]+))?#', $url, $matches); - - $topic_id = (int) (isset($matches[1][0])) ? $matches[1][0] : 0; - $post_id = (int) (isset($matches[3][0])) ? $matches[3][0] : 0; - - return array( - 'topic_id' => $topic_id, - 'post_id' => $post_id, - ); - } } diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index 684d7a84cb..15f7814800 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -593,4 +593,135 @@ class phpbb_functional_test_case extends phpbb_test_case { self::assertEquals($status_code, self::$client->getResponse()->getStatus()); } + + /** + * Creates a topic + * + * Be sure to login before creating + * + * @param int $forum_id + * @param string $subject + * @param string $message + * @param array $additional_form_data Any additional form data to be sent in the request + * @return array post_id, topic_id + */ + public function create_topic($forum_id, $subject, $message, $additional_form_data = array()) + { + $posting_url = "posting.php?mode=post&f={$forum_id}&sid={$this->sid}"; + + $form_data = array_merge(array( + 'subject' => $subject, + 'message' => $message, + 'post' => true, + ), $additional_form_data); + + return self::submit_post($posting_url, 'POST_TOPIC', $form_data); + } + + /** + * Creates a post + * + * Be sure to login before creating + * + * @param int $forum_id + * @param int $topic_id + * @param string $subject + * @param string $message + * @param array $additional_form_data Any additional form data to be sent in the request + * @return array post_id, topic_id + */ + public function create_post($forum_id, $topic_id, $subject, $message, $additional_form_data = array()) + { + $posting_url = "posting.php?mode=reply&f={$forum_id}&t={$topic_id}&sid={$this->sid}"; + + $form_data = array_merge(array( + 'subject' => $subject, + 'message' => $message, + 'post' => true, + ), $additional_form_data); + + return self::submit_post($posting_url, 'POST_REPLY', $form_data); + } + + /** + * Helper for submitting posts + * + * @param string $posting_url + * @param string $posting_contains + * @param array $form_data + * @return array post_id, topic_id + */ + protected function submit_post($posting_url, $posting_contains, $form_data) + { + $this->add_lang('posting'); + + $crawler = self::request('GET', $posting_url); + $this->assertContains($this->lang($posting_contains), $crawler->filter('html')->text()); + + $hidden_fields = array( + $crawler->filter('[type="hidden"]')->each(function ($node, $i) { + return array('name' => $node->getAttribute('name'), 'value' => $node->getAttribute('value')); + }), + ); + + foreach ($hidden_fields as $fields) + { + foreach($fields as $field) + { + $form_data[$field['name']] = $field['value']; + } + } + + // Bypass time restriction that said that if the lastclick time (i.e. time when the form was opened) + // is not at least 2 seconds before submission, cancel the form + $form_data['lastclick'] = 0; + + // I use a request because the form submission method does not allow you to send data that is not + // contained in one of the actual form fields that the browser sees (i.e. it ignores "hidden" inputs) + // Instead, I send it as a request with the submit button "post" set to true. + $crawler = self::request('POST', $posting_url, $form_data); + $this->assertContains($this->lang('POST_STORED'), $crawler->filter('html')->text()); + $url = $crawler->selectLink($this->lang('VIEW_MESSAGE', '', ''))->link()->getUri(); + + return array( + 'topic_id' => $this->get_parameter_from_link($url, 't'), + 'post_id' => $this->get_parameter_from_link($url, 'p'), + ); + } + + /* + * Returns the requested parameter from a URL + * + * @param string $url + * @param string $parameter + * @return string Value of the parameter in the URL, null if not set + */ + public function get_parameter_from_link($url, $parameter) + { + if (strpos($url, '?') === false) + { + return null; + } + + $url_parts = explode('?', $url); + if (isset($url_parts[1])) + { + $url_parameters = $url_parts[1]; + if (strpos($url_parameters, '#') !== false) + { + $url_parameters = explode('#', $url_parameters); + $url_parameters = $url_parameters[0]; + } + + foreach (explode('&', $url_parameters) as $url_param) + { + list($param, $value) = explode('=', $url_param); + if ($param == $parameter) + { + return $value; + } + } + } + return null; + } } -- cgit v1.2.1 From a9b5e77e684043924f8c34c8782b32a0f146228c Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Fri, 9 Aug 2013 00:41:28 +0200 Subject: [ticket/11775] Add functional test for moving the last post PHPBB3-11775 --- tests/functional/mcp_test.php | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 tests/functional/mcp_test.php (limited to 'tests') diff --git a/tests/functional/mcp_test.php b/tests/functional/mcp_test.php new file mode 100644 index 0000000000..f7e15de853 --- /dev/null +++ b/tests/functional/mcp_test.php @@ -0,0 +1,43 @@ +login(); + + // Test creating topic + $post = $this->create_topic(2, 'Test Topic 2', 'Testing move post with "Move posts" option from Quick-Moderator Tools.'); + + $crawler = self::request('GET', "viewtopic.php?t={$post['topic_id']}&sid={$this->sid}"); + $this->assertContains('Testing move post with "Move posts" option from Quick-Moderator Tools.', $crawler->filter('html')->text()); + + // Test moving a post + $this->add_lang('mcp'); + $form = $crawler->selectButton('Go')->eq(1)->form(); + $form['action']->select('merge'); + $crawler = self::submit($form); + + // Select the post in MCP + $form = $crawler->selectButton($this->lang('SUBMIT'))->form(array( + 'to_topic_id' => 1, + )); + $form['post_id_list'][0]->tick(); + $crawler = self::submit($form); + $this->assertContains($this->lang('MERGE_POSTS'), $crawler->filter('html')->text()); + + $form = $crawler->selectButton('Yes')->form(); + $crawler = self::submit($form); + $this->assertContains($this->lang('POSTS_MERGED_SUCCESS'), $crawler->text()); + } +} -- cgit v1.2.1 From 63535b196dd5d4dcdc9a8fb6af03663638f8d8ce Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Mon, 12 Aug 2013 15:31:19 +0200 Subject: [ticket/11775] Split test into multiple steps PHPBB3-11775 --- tests/functional/mcp_test.php | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/functional/mcp_test.php b/tests/functional/mcp_test.php index f7e15de853..f65a7d0784 100644 --- a/tests/functional/mcp_test.php +++ b/tests/functional/mcp_test.php @@ -22,12 +22,27 @@ class phpbb_functional_mcp_test extends phpbb_functional_test_case $crawler = self::request('GET', "viewtopic.php?t={$post['topic_id']}&sid={$this->sid}"); $this->assertContains('Testing move post with "Move posts" option from Quick-Moderator Tools.', $crawler->filter('html')->text()); + return $crawler; + } + + /** + * @depends test_post_new_topic + */ + public function test_handle_quickmod($crawler) + { // Test moving a post - $this->add_lang('mcp'); $form = $crawler->selectButton('Go')->eq(1)->form(); $form['action']->select('merge'); $crawler = self::submit($form); + return $crawler; + } + + /** + * @depends test_handle_quickmod + */ + public function test_move_post_to_topic($crawler) + { // Select the post in MCP $form = $crawler->selectButton($this->lang('SUBMIT'))->form(array( 'to_topic_id' => 1, @@ -36,6 +51,15 @@ class phpbb_functional_mcp_test extends phpbb_functional_test_case $crawler = self::submit($form); $this->assertContains($this->lang('MERGE_POSTS'), $crawler->filter('html')->text()); + return $crawler; + } + + /** + * @depends test_move_post_to_topic + */ + public function test_confirm_result($crawler) + { + $this->add_lang('mcp'); $form = $crawler->selectButton('Yes')->form(); $crawler = self::submit($form); $this->assertContains($this->lang('POSTS_MERGED_SUCCESS'), $crawler->text()); -- cgit v1.2.1 From 65d8cd63022d688fe618f128768b78a6214db166 Mon Sep 17 00:00:00 2001 From: Matt Friedman Date: Tue, 13 Aug 2013 02:14:22 -0700 Subject: [ticket/11784] Remove naming redundancy for event listeners PHPBB3-11784 --- .../fixtures/ext/foo/bar/event/permission.php | 40 ++++++++++++++++++++++ .../ext/foo/bar/event/permission_listener.php | 40 ---------------------- .../ext/kappa/styles/all/template/event/test.html | 1 + .../styles/all/template/event/test_listener.html | 1 - .../kappa/styles/silver/template/event/test.html | 1 + .../silver/template/event/test_listener.html | 1 - .../styles/silver_inherit/template/event/test.html | 1 + .../template/event/test_listener.html | 1 - .../ext/omega/styles/all/template/event/test.html | 1 + .../styles/all/template/event/test_listener.html | 1 - .../omega/styles/silver/template/event/test.html | 1 + .../silver/template/event/test_listener.html | 1 - .../omega/styles/silver/template/event/two.html | 1 + .../styles/silver/template/event/two_listener.html | 1 - .../ext/zeta/styles/all/template/event/test.html | 1 + .../styles/all/template/event/test_listener.html | 1 - .../all/template/event/event_variable_spacing.html | 6 ++++ .../event/event_variable_spacing_listener.html | 6 ---- .../styles/all/template/event/test_event_loop.html | 1 + .../template/event/test_event_loop_listener.html | 1 - .../styles/all/template/event/universal.html | 1 + .../all/template/event/universal_listener.html | 1 - .../styles/silver/template/event/simple.html | 1 + .../silver/template/event/simple_listener.html | 1 - 24 files changed, 56 insertions(+), 56 deletions(-) create mode 100644 tests/functional/fixtures/ext/foo/bar/event/permission.php delete mode 100644 tests/functional/fixtures/ext/foo/bar/event/permission_listener.php create mode 100644 tests/template/datasets/event_inheritance/ext/kappa/styles/all/template/event/test.html delete mode 100644 tests/template/datasets/event_inheritance/ext/kappa/styles/all/template/event/test_listener.html create mode 100644 tests/template/datasets/event_inheritance/ext/kappa/styles/silver/template/event/test.html delete mode 100644 tests/template/datasets/event_inheritance/ext/kappa/styles/silver/template/event/test_listener.html create mode 100644 tests/template/datasets/event_inheritance/ext/kappa/styles/silver_inherit/template/event/test.html delete mode 100644 tests/template/datasets/event_inheritance/ext/kappa/styles/silver_inherit/template/event/test_listener.html create mode 100644 tests/template/datasets/event_inheritance/ext/omega/styles/all/template/event/test.html delete mode 100644 tests/template/datasets/event_inheritance/ext/omega/styles/all/template/event/test_listener.html create mode 100644 tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/test.html delete mode 100644 tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/test_listener.html create mode 100644 tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/two.html delete mode 100644 tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/two_listener.html create mode 100644 tests/template/datasets/event_inheritance/ext/zeta/styles/all/template/event/test.html delete mode 100644 tests/template/datasets/event_inheritance/ext/zeta/styles/all/template/event/test_listener.html create mode 100644 tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/event_variable_spacing.html delete mode 100644 tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/event_variable_spacing_listener.html create mode 100644 tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/test_event_loop.html delete mode 100644 tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/test_event_loop_listener.html create mode 100644 tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/universal.html delete mode 100644 tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/universal_listener.html create mode 100644 tests/template/datasets/ext_trivial/ext/trivial/styles/silver/template/event/simple.html delete mode 100644 tests/template/datasets/ext_trivial/ext/trivial/styles/silver/template/event/simple_listener.html (limited to 'tests') diff --git a/tests/functional/fixtures/ext/foo/bar/event/permission.php b/tests/functional/fixtures/ext/foo/bar/event/permission.php new file mode 100644 index 0000000000..48688a586a --- /dev/null +++ b/tests/functional/fixtures/ext/foo/bar/event/permission.php @@ -0,0 +1,40 @@ + 'add_permissions', + ); + } + + public function add_permissions($event) + { + $permissions = $event['permissions']; + $permissions['u_foo'] = array('lang' => 'ACL_U_FOOBAR', 'cat' => 'post'); + $event['permissions'] = $permissions; + } +} diff --git a/tests/functional/fixtures/ext/foo/bar/event/permission_listener.php b/tests/functional/fixtures/ext/foo/bar/event/permission_listener.php deleted file mode 100644 index 6986755f71..0000000000 --- a/tests/functional/fixtures/ext/foo/bar/event/permission_listener.php +++ /dev/null @@ -1,40 +0,0 @@ - 'add_permissions', - ); - } - - public function add_permissions($event) - { - $permissions = $event['permissions']; - $permissions['u_foo'] = array('lang' => 'ACL_U_FOOBAR', 'cat' => 'post'); - $event['permissions'] = $permissions; - } -} diff --git a/tests/template/datasets/event_inheritance/ext/kappa/styles/all/template/event/test.html b/tests/template/datasets/event_inheritance/ext/kappa/styles/all/template/event/test.html new file mode 100644 index 0000000000..3eb906a09e --- /dev/null +++ b/tests/template/datasets/event_inheritance/ext/kappa/styles/all/template/event/test.html @@ -0,0 +1 @@ +Kappa test event in all diff --git a/tests/template/datasets/event_inheritance/ext/kappa/styles/all/template/event/test_listener.html b/tests/template/datasets/event_inheritance/ext/kappa/styles/all/template/event/test_listener.html deleted file mode 100644 index 3eb906a09e..0000000000 --- a/tests/template/datasets/event_inheritance/ext/kappa/styles/all/template/event/test_listener.html +++ /dev/null @@ -1 +0,0 @@ -Kappa test event in all diff --git a/tests/template/datasets/event_inheritance/ext/kappa/styles/silver/template/event/test.html b/tests/template/datasets/event_inheritance/ext/kappa/styles/silver/template/event/test.html new file mode 100644 index 0000000000..3b65d80a6d --- /dev/null +++ b/tests/template/datasets/event_inheritance/ext/kappa/styles/silver/template/event/test.html @@ -0,0 +1 @@ +Kappa test event in silver diff --git a/tests/template/datasets/event_inheritance/ext/kappa/styles/silver/template/event/test_listener.html b/tests/template/datasets/event_inheritance/ext/kappa/styles/silver/template/event/test_listener.html deleted file mode 100644 index 3b65d80a6d..0000000000 --- a/tests/template/datasets/event_inheritance/ext/kappa/styles/silver/template/event/test_listener.html +++ /dev/null @@ -1 +0,0 @@ -Kappa test event in silver diff --git a/tests/template/datasets/event_inheritance/ext/kappa/styles/silver_inherit/template/event/test.html b/tests/template/datasets/event_inheritance/ext/kappa/styles/silver_inherit/template/event/test.html new file mode 100644 index 0000000000..26826d59e3 --- /dev/null +++ b/tests/template/datasets/event_inheritance/ext/kappa/styles/silver_inherit/template/event/test.html @@ -0,0 +1 @@ +Kappa test event in silver_inherit diff --git a/tests/template/datasets/event_inheritance/ext/kappa/styles/silver_inherit/template/event/test_listener.html b/tests/template/datasets/event_inheritance/ext/kappa/styles/silver_inherit/template/event/test_listener.html deleted file mode 100644 index 26826d59e3..0000000000 --- a/tests/template/datasets/event_inheritance/ext/kappa/styles/silver_inherit/template/event/test_listener.html +++ /dev/null @@ -1 +0,0 @@ -Kappa test event in silver_inherit diff --git a/tests/template/datasets/event_inheritance/ext/omega/styles/all/template/event/test.html b/tests/template/datasets/event_inheritance/ext/omega/styles/all/template/event/test.html new file mode 100644 index 0000000000..003d193dc3 --- /dev/null +++ b/tests/template/datasets/event_inheritance/ext/omega/styles/all/template/event/test.html @@ -0,0 +1 @@ +Omega test event in all diff --git a/tests/template/datasets/event_inheritance/ext/omega/styles/all/template/event/test_listener.html b/tests/template/datasets/event_inheritance/ext/omega/styles/all/template/event/test_listener.html deleted file mode 100644 index 003d193dc3..0000000000 --- a/tests/template/datasets/event_inheritance/ext/omega/styles/all/template/event/test_listener.html +++ /dev/null @@ -1 +0,0 @@ -Omega test event in all diff --git a/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/test.html b/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/test.html new file mode 100644 index 0000000000..6bf06f5457 --- /dev/null +++ b/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/test.html @@ -0,0 +1 @@ +Omega test event in silver diff --git a/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/test_listener.html b/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/test_listener.html deleted file mode 100644 index 6bf06f5457..0000000000 --- a/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/test_listener.html +++ /dev/null @@ -1 +0,0 @@ -Omega test event in silver diff --git a/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/two.html b/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/two.html new file mode 100644 index 0000000000..7f8058f4e4 --- /dev/null +++ b/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/two.html @@ -0,0 +1 @@ +two in silver in omega diff --git a/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/two_listener.html b/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/two_listener.html deleted file mode 100644 index 7f8058f4e4..0000000000 --- a/tests/template/datasets/event_inheritance/ext/omega/styles/silver/template/event/two_listener.html +++ /dev/null @@ -1 +0,0 @@ -two in silver in omega diff --git a/tests/template/datasets/event_inheritance/ext/zeta/styles/all/template/event/test.html b/tests/template/datasets/event_inheritance/ext/zeta/styles/all/template/event/test.html new file mode 100644 index 0000000000..5fc7e5ac12 --- /dev/null +++ b/tests/template/datasets/event_inheritance/ext/zeta/styles/all/template/event/test.html @@ -0,0 +1 @@ +Zeta test event in all diff --git a/tests/template/datasets/event_inheritance/ext/zeta/styles/all/template/event/test_listener.html b/tests/template/datasets/event_inheritance/ext/zeta/styles/all/template/event/test_listener.html deleted file mode 100644 index 5fc7e5ac12..0000000000 --- a/tests/template/datasets/event_inheritance/ext/zeta/styles/all/template/event/test_listener.html +++ /dev/null @@ -1 +0,0 @@ -Zeta test event in all diff --git a/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/event_variable_spacing.html b/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/event_variable_spacing.html new file mode 100644 index 0000000000..028f8aa0d1 --- /dev/null +++ b/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/event_variable_spacing.html @@ -0,0 +1,6 @@ +|{VARIABLE}| +{VARIABLE}|{VARIABLE}| + +|{VARIABLE} + +
test
diff --git a/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/event_variable_spacing_listener.html b/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/event_variable_spacing_listener.html deleted file mode 100644 index 028f8aa0d1..0000000000 --- a/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/event_variable_spacing_listener.html +++ /dev/null @@ -1,6 +0,0 @@ -|{VARIABLE}| -{VARIABLE}|{VARIABLE}| - -|{VARIABLE} - -
test
diff --git a/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/test_event_loop.html b/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/test_event_loop.html new file mode 100644 index 0000000000..235e129f85 --- /dev/null +++ b/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/test_event_loop.html @@ -0,0 +1 @@ +{event_loop.S_ROW_COUNT}| diff --git a/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/test_event_loop_listener.html b/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/test_event_loop_listener.html deleted file mode 100644 index 235e129f85..0000000000 --- a/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/test_event_loop_listener.html +++ /dev/null @@ -1 +0,0 @@ -{event_loop.S_ROW_COUNT}| diff --git a/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/universal.html b/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/universal.html new file mode 100644 index 0000000000..f2c5762ade --- /dev/null +++ b/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/universal.html @@ -0,0 +1 @@ +Universal in trivial extension. diff --git a/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/universal_listener.html b/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/universal_listener.html deleted file mode 100644 index f2c5762ade..0000000000 --- a/tests/template/datasets/ext_trivial/ext/trivial/styles/all/template/event/universal_listener.html +++ /dev/null @@ -1 +0,0 @@ -Universal in trivial extension. diff --git a/tests/template/datasets/ext_trivial/ext/trivial/styles/silver/template/event/simple.html b/tests/template/datasets/ext_trivial/ext/trivial/styles/silver/template/event/simple.html new file mode 100644 index 0000000000..fe32a1ed3f --- /dev/null +++ b/tests/template/datasets/ext_trivial/ext/trivial/styles/silver/template/event/simple.html @@ -0,0 +1 @@ +Simple in trivial extension. diff --git a/tests/template/datasets/ext_trivial/ext/trivial/styles/silver/template/event/simple_listener.html b/tests/template/datasets/ext_trivial/ext/trivial/styles/silver/template/event/simple_listener.html deleted file mode 100644 index fe32a1ed3f..0000000000 --- a/tests/template/datasets/ext_trivial/ext/trivial/styles/silver/template/event/simple_listener.html +++ /dev/null @@ -1 +0,0 @@ -Simple in trivial extension. -- cgit v1.2.1 From 4b0adfcff54f9ebd3261e4673f689eb2c4c066df Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Thu, 15 Aug 2013 01:35:02 +0200 Subject: [ticket/11775] Remove spaces at line ends PHPBB3-11775 --- tests/test_framework/phpbb_functional_test_case.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'tests') diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index 15f7814800..72990d3a21 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -596,9 +596,9 @@ class phpbb_functional_test_case extends phpbb_test_case /** * Creates a topic - * + * * Be sure to login before creating - * + * * @param int $forum_id * @param string $subject * @param string $message @@ -620,9 +620,9 @@ class phpbb_functional_test_case extends phpbb_test_case /** * Creates a post - * + * * Be sure to login before creating - * + * * @param int $forum_id * @param int $topic_id * @param string $subject -- cgit v1.2.1 From c30d4025d2976db3f55a8d477e27ca5598f83f69 Mon Sep 17 00:00:00 2001 From: Joas Schilling Date: Thu, 15 Aug 2013 01:36:38 +0200 Subject: [ticket/11775] Fix doc blocks syntax PHPBB3-11775 --- tests/test_framework/phpbb_functional_test_case.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index 72990d3a21..7d8b4a3144 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -689,7 +689,7 @@ class phpbb_functional_test_case extends phpbb_test_case ); } - /* + /** * Returns the requested parameter from a URL * * @param string $url -- cgit v1.2.1 From 2bf97a01ce24d7e8fc789c4e29e8dd4d3b2780a2 Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Wed, 14 Aug 2013 23:42:50 -0400 Subject: [feature/oauth] Refactor test to provide for easier to read tests PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 29 ++++++++++++++---------- 1 file changed, 17 insertions(+), 12 deletions(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index a0a8a36f47..f47f3652b6 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -47,25 +47,16 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c public static function retrieveAccessToken_data() { return array( - array(null, new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param')), null), - array(new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ), null, null), - array(null, null, 'OAuth\Common\Storage\Exception\TokenNotFoundException'), + array(new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param')), null), + array(null, 'OAuth\Common\Storage\Exception\TokenNotFoundException'), ); } /** * @dataProvider retrieveAccessToken_data */ - public function test_retrieveAccessToken($cache_token, $db_token, $exception) + public function test_retrieveAccessToken($cache_token, $exception) { - if ($db_token) - { - $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); - $temp_storage->storeAccessToken($db_token); - unset($temp_storage); - $token = $db_token; - } - if ($cache_token) { $this->token_storage->storeAccessToken($cache_token); @@ -78,6 +69,20 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $this->assertEquals($token, $stored_token); } + public function test_retrieveAccessToken_from_db() + { + $expected_token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES); + + // Store a token in the database + $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); + $temp_storage->storeAccessToken($expected_token); + unset($temp_storage); + + // Test to see if the token can be retrieved + $stored_token = $this->token_storage->retrieveAccessToken(); + $this->assertEquals($expected_token, $stored_token); + } + /** * @dataProvider retrieveAccessToken_data */ -- cgit v1.2.1 From 83515cd3d42486b7411ac5e817cb5c2378b75fe8 Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Thu, 15 Aug 2013 01:14:37 -0400 Subject: [feature/oauth] Fix remaining issues with token storage PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 25 ++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index f47f3652b6..026a539285 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -86,16 +86,8 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c /** * @dataProvider retrieveAccessToken_data */ - public function test_retrieve_access_token_by_session($cache_token, $db_token, $exception) + public function test_retrieve_access_token_by_session($cache_token, $exception) { - if ($db_token) - { - $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); - $temp_storage->storeAccessToken($db_token); - unset($temp_storage); - $token = $db_token; - } - if ($cache_token) { $this->token_storage->storeAccessToken($cache_token); @@ -108,6 +100,19 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $this->assertEquals($token, $stored_token); } + public function test_retrieve_access_token_by_session_from_db() + { + $expected_token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES); + + // Store a token in the database + $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); + $temp_storage->storeAccessToken($expected_token); + unset($temp_storage); + + // Test to see if the token can be retrieved + $stored_token = $this->token_storage->retrieve_access_token_by_session(); + $this->assertEquals($expected_token, $stored_token); + } public function test_storeAccessToken() { @@ -122,7 +127,7 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $row = $this->get_token_row_by_session_id($this->session_id); // The token is serialized before stored in the database - $this->assertEquals(serialize($token), $row['oauth_token']); + $this->assertEquals($this->token_storage->json_encode_token($token), $row['oauth_token']); } public static function hasAccessToken_data() -- cgit v1.2.1 From e113b468101a24fbc02157e1ada0d7ead5ccf1ae Mon Sep 17 00:00:00 2001 From: rechosen Date: Thu, 22 Aug 2013 11:06:04 +0200 Subject: [ticket/11792] Add functional test for var lang_set_ext of core.user_setup To ensure that the new lang_set_ext variable available with the core.user_setup event works properly, a functional test was added. It overwrites the value of the 'SKIP' language key, which is assumed to remain in use for some time to come. PHPBB3-11792 --- tests/functional/extension_global_lang_test.php | 63 ++++++++++++++++++++++ .../fixtures/ext/foo/bar/event/user_setup.php | 43 +++++++++++++++ .../ext/foo/bar/language/en/foo_global.php | 5 ++ 3 files changed, 111 insertions(+) create mode 100644 tests/functional/extension_global_lang_test.php create mode 100644 tests/functional/fixtures/ext/foo/bar/event/user_setup.php create mode 100644 tests/functional/fixtures/ext/foo/bar/language/en/foo_global.php (limited to 'tests') diff --git a/tests/functional/extension_global_lang_test.php b/tests/functional/extension_global_lang_test.php new file mode 100644 index 0000000000..fb8f87e6de --- /dev/null +++ b/tests/functional/extension_global_lang_test.php @@ -0,0 +1,63 @@ +copy_ext_fixtures(dirname(__FILE__) . '/fixtures/ext/', self::$fixtures); + } + + static public function tearDownAfterClass() + { + parent::tearDownAfterClass(); + + self::$helper->restore_original_ext_dir(); + } + + public function setUp() + { + parent::setUp(); + + $this->get_db(); + + $this->phpbb_extension_manager = $this->get_extension_manager(); + + $this->purge_cache(); + } + + public function test_load_extension_lang_globally() + { + $this->phpbb_extension_manager->enable('foo/bar'); + + // The board index, which should contain an overwritten translation + $crawler = self::request('GET', 'index.php'); + + // language from language/en/common.php + $this->assertNotContains('Skip to content', $crawler->filter('.skiplink')->text()); + + // language from ext/foo/bar/language/en/foo_global.php + $this->assertContains('Overwritten by foo', $crawler->filter('.skiplink')->text()); + } +} diff --git a/tests/functional/fixtures/ext/foo/bar/event/user_setup.php b/tests/functional/fixtures/ext/foo/bar/event/user_setup.php new file mode 100644 index 0000000000..3d2d0c5325 --- /dev/null +++ b/tests/functional/fixtures/ext/foo/bar/event/user_setup.php @@ -0,0 +1,43 @@ + 'add_global_translations', + ); + } + + public function add_global_translations($event) + { + $lang_set_ext = $event['lang_set_ext']; + $lang_set_ext[] = array( + 'ext_name' => 'foo/bar', + 'lang_set' => 'foo_global', + ); + $event['lang_set_ext'] = $lang_set_ext; + } +} diff --git a/tests/functional/fixtures/ext/foo/bar/language/en/foo_global.php b/tests/functional/fixtures/ext/foo/bar/language/en/foo_global.php new file mode 100644 index 0000000000..a6af8680d3 --- /dev/null +++ b/tests/functional/fixtures/ext/foo/bar/language/en/foo_global.php @@ -0,0 +1,5 @@ + 'Overwritten by foo', +)); -- cgit v1.2.1 From d204cdeee0de5668961531c2db88c1b749c290ed Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Tue, 27 Aug 2013 19:36:19 -0400 Subject: [ticket/11813] Change mock auth provider to implement base provider PHPBB3-11813 --- tests/mock/auth_provider.php | 34 ++-------------------------------- 1 file changed, 2 insertions(+), 32 deletions(-) (limited to 'tests') diff --git a/tests/mock/auth_provider.php b/tests/mock/auth_provider.php index 9d002334d6..a576ef6b67 100644 --- a/tests/mock/auth_provider.php +++ b/tests/mock/auth_provider.php @@ -10,14 +10,9 @@ /** * Mock auth provider class with basic functions to help test sessions. */ -class phpbb_mock_auth_provider implements phpbb_auth_provider_interface +class phpbb_mock_auth_provider extends phpbb_auth_provider_base { - function init() - { - return null; - } - - function login($username, $password) + public function login($username, $password) { return array( 'status' => "", @@ -25,29 +20,4 @@ class phpbb_mock_auth_provider implements phpbb_auth_provider_interface 'user_row' => "", ); } - - function autologin() - { - return array(); - } - - function acp() - { - return array(); - } - - function logout($data, $new_session) - { - return null; - } - - function validate_session($user) - { - return null; - } - - public function get_acp_template($new_config) - { - return null; - } } -- cgit v1.2.1 From 62e81d174d9d3dbd78baea36425720ed0fdaffb1 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Thu, 29 Aug 2013 09:19:14 -0500 Subject: [ticket/11816] Fix define/loop checks in IF statements containing parenthesis PHPBB3-11816 --- tests/template/template_test.php | 2 +- tests/template/templates/define.html | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/template/template_test.php b/tests/template/template_test.php index 0a6b680100..0473218353 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -151,7 +151,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case array(), array('test_loop' => array(array(), array(), array(), array(), array(), array(), array()), 'test' => array(array()), 'test.deep' => array(array()), 'test.deep.defines' => array(array())), array(), - "xyz\nabc\n\$VALUE == 'abc'abc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?", + "xyz\nabc\n\$VALUE == 'abc'\n(\$VALUE == 'abc')\nabc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?", ), array( 'define_advanced.html', diff --git a/tests/template/templates/define.html b/tests/template/templates/define.html index 66e874ca63..12842ad387 100644 --- a/tests/template/templates/define.html +++ b/tests/template/templates/define.html @@ -7,6 +7,9 @@ $VALUE != 'abc' $VALUE == 'abc' + +($VALUE == 'abc') + {$INCLUDED_VALUE} {$VALUE} -- cgit v1.2.1 From 73859da481aa2be6b02e5b7f2825938aed82e858 Mon Sep 17 00:00:00 2001 From: David King Date: Sat, 31 Aug 2013 14:51:28 -0700 Subject: [ticket/11215] Use new URL structure for controllers In tests, the old app.php?controller=foo structure was used. Instead it should be app.php/foo. PHPBB3-11215 --- tests/functional/extension_controller_test.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'tests') diff --git a/tests/functional/extension_controller_test.php b/tests/functional/extension_controller_test.php index 7d29f0000c..dc6d9c0f65 100644 --- a/tests/functional/extension_controller_test.php +++ b/tests/functional/extension_controller_test.php @@ -52,7 +52,7 @@ class phpbb_functional_extension_controller_test extends phpbb_functional_test_c public function test_foo_bar() { $this->phpbb_extension_manager->enable('foo/bar'); - $crawler = self::request('GET', 'app.php?controller=foo/bar', array(), false); + $crawler = self::request('GET', 'app.php/foo/bar', array(), false); self::assert_response_status_code(); $this->assertContains("foo/bar controller handle() method", $crawler->filter('body')->text()); $this->phpbb_extension_manager->purge('foo/bar'); @@ -64,7 +64,7 @@ class phpbb_functional_extension_controller_test extends phpbb_functional_test_c public function test_controller_with_template() { $this->phpbb_extension_manager->enable('foo/bar'); - $crawler = self::request('GET', 'app.php?controller=foo/template'); + $crawler = self::request('GET', 'app.php/foo/template'); $this->assertContains("I am a variable", $crawler->filter('#content')->text()); $this->phpbb_extension_manager->purge('foo/bar'); } @@ -76,7 +76,7 @@ class phpbb_functional_extension_controller_test extends phpbb_functional_test_c public function test_missing_argument() { $this->phpbb_extension_manager->enable('foo/bar'); - $crawler = self::request('GET', 'app.php?controller=foo/baz', array(), false); + $crawler = self::request('GET', 'app.php/foo/baz', array(), false); $this->assert_response_html(500); $this->assertContains('Missing value for argument #1: test in class phpbb_ext_foo_bar_controller:baz', $crawler->filter('body')->text()); $this->phpbb_extension_manager->purge('foo/bar'); @@ -88,7 +88,7 @@ class phpbb_functional_extension_controller_test extends phpbb_functional_test_c public function test_exception_should_result_in_500_status_code() { $this->phpbb_extension_manager->enable('foo/bar'); - $crawler = self::request('GET', 'app.php?controller=foo/exception', array(), false); + $crawler = self::request('GET', 'app.php/foo/exception', array(), false); $this->assert_response_html(500); $this->assertContains('Exception thrown from foo/exception route', $crawler->filter('body')->text()); $this->phpbb_extension_manager->purge('foo/bar'); @@ -105,7 +105,7 @@ class phpbb_functional_extension_controller_test extends phpbb_functional_test_c */ public function test_error_ext_disabled_or_404() { - $crawler = self::request('GET', 'app.php?controller=does/not/exist', array(), false); + $crawler = self::request('GET', 'app.php/does/not/exist', array(), false); $this->assert_response_html(404); $this->assertContains('No route found for "GET /does/not/exist"', $crawler->filter('body')->text()); } -- cgit v1.2.1 From a1b4c6f82a01591a121d47d32c57b93870aa946a Mon Sep 17 00:00:00 2001 From: David King Date: Mon, 2 Sep 2013 12:53:37 -0700 Subject: [ticket/11215] Fix helper_url_test.php tests PHPBB3-11215 --- tests/controller/helper_url_test.php | 32 +++++++++++++++++--------------- 1 file changed, 17 insertions(+), 15 deletions(-) (limited to 'tests') diff --git a/tests/controller/helper_url_test.php b/tests/controller/helper_url_test.php index fc7d02e9cf..49635332a7 100644 --- a/tests/controller/helper_url_test.php +++ b/tests/controller/helper_url_test.php @@ -15,28 +15,28 @@ class phpbb_controller_helper_url_test extends phpbb_test_case public function helper_url_data() { return array( - array('foo/bar?t=1&f=2', false, true, false, 'app.php?t=1&f=2&controller=foo/bar', 'parameters in url-argument'), - array('foo/bar', 't=1&f=2', true, false, 'app.php?controller=foo/bar&t=1&f=2', 'parameters in params-argument using amp'), - array('foo/bar', 't=1&f=2', false, false, 'app.php?controller=foo/bar&t=1&f=2', 'parameters in params-argument using &'), - array('foo/bar', array('t' => 1, 'f' => 2), true, false, 'app.php?controller=foo/bar&t=1&f=2', 'parameters in params-argument as array'), + array('foo/bar?t=1&f=2', false, true, false, 'foo/bar?t=1&f=2', 'parameters in url-argument'), + array('foo/bar', 't=1&f=2', true, false, 'foo/bar?t=1&f=2', 'parameters in params-argument using amp'), + array('foo/bar', 't=1&f=2', false, false, 'foo/bar?t=1&f=2', 'parameters in params-argument using &'), + array('foo/bar', array('t' => 1, 'f' => 2), true, false, 'foo/bar?t=1&f=2', 'parameters in params-argument as array'), // Custom sid parameter - array('foo/bar', 't=1&f=2', true, 'custom-sid', 'app.php?controller=foo/bar&t=1&f=2&sid=custom-sid', 'using session_id'), + array('foo/bar', 't=1&f=2', true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid', 'using session_id'), // Testing anchors - array('foo/bar?t=1&f=2#anchor', false, true, false, 'app.php?t=1&f=2&controller=foo/bar#anchor', 'anchor in url-argument'), - array('foo/bar', 't=1&f=2#anchor', true, false, 'app.php?controller=foo/bar&t=1&f=2#anchor', 'anchor in params-argument'), - array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, false, 'app.php?controller=foo/bar&t=1&f=2#anchor', 'anchor in params-argument (array)'), + array('foo/bar?t=1&f=2#anchor', false, true, false, 'foo/bar?t=1&f=2#anchor', 'anchor in url-argument'), + array('foo/bar', 't=1&f=2#anchor', true, false, 'foo/bar?t=1&f=2#anchor', 'anchor in params-argument'), + array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, false, 'foo/bar?t=1&f=2#anchor', 'anchor in params-argument (array)'), // Anchors and custom sid - array('foo/bar?t=1&f=2#anchor', false, true, 'custom-sid', 'app.php?t=1&f=2&controller=foo/bar&sid=custom-sid#anchor', 'anchor in url-argument using session_id'), - array('foo/bar', 't=1&f=2#anchor', true, 'custom-sid', 'app.php?controller=foo/bar&t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument using session_id'), - array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, 'custom-sid', 'app.php?controller=foo/bar&t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument (array) using session_id'), + array('foo/bar?t=1&f=2#anchor', false, true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in url-argument using session_id'), + array('foo/bar', 't=1&f=2#anchor', true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument using session_id'), + array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument (array) using session_id'), // Empty parameters should not append the & - array('foo/bar', false, true, false, 'app.php?controller=foo/bar', 'no params using bool false'), - array('foo/bar', '', true, false, 'app.php?controller=foo/bar', 'no params using empty string'), - array('foo/bar', array(), true, false, 'app.php?controller=foo/bar', 'no params using empty array'), + array('foo/bar', false, true, false, 'foo/bar', 'no params using bool false'), + array('foo/bar', '', true, false, 'foo/bar', 'no params using empty string'), + array('foo/bar', array(), true, false, 'foo/bar', 'no params using empty array'), ); } @@ -51,7 +51,9 @@ class phpbb_controller_helper_url_test extends phpbb_test_case $this->user = $this->getMock('phpbb_user'); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - $helper = new phpbb_controller_helper($this->template, $this->user, '', 'php'); + + $request = new phpbb_mock_request($_GET, $_POST, $_COOKIE, $_SERVER, false, $_FILES); + $helper = new phpbb_controller_helper($this->template, $this->user, $request, '', 'php'); $this->assertEquals($helper->url($route, $params, $is_amp, $session_id), $expected); } } -- cgit v1.2.1 From 4348fd83501a56338c1584d96da91b1d6945b93b Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Mon, 2 Sep 2013 15:32:42 -0400 Subject: [feature/oauth] Make token storage service ignorant PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 44 ++++++++++++------------ 1 file changed, 22 insertions(+), 22 deletions(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index 026a539285..223d4dfb93 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -36,7 +36,7 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c // Set the user id to anonymous $this->user->data['user_id'] = ANONYMOUS; - $this->token_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); + $this->token_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->token_storage_table); } public function getDataSet() @@ -59,13 +59,13 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c { if ($cache_token) { - $this->token_storage->storeAccessToken($cache_token); + $this->token_storage->storeAccessToken($this->service_name, $cache_token); $token = $cache_token; } $this->setExpectedException($exception); - $stored_token = $this->token_storage->retrieveAccessToken(); + $stored_token = $this->token_storage->retrieveAccessToken($this->service_name); $this->assertEquals($token, $stored_token); } @@ -74,12 +74,12 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $expected_token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES); // Store a token in the database - $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); - $temp_storage->storeAccessToken($expected_token); + $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->token_storage_table); + $temp_storage->storeAccessToken($this->service_name, $expected_token); unset($temp_storage); // Test to see if the token can be retrieved - $stored_token = $this->token_storage->retrieveAccessToken(); + $stored_token = $this->token_storage->retrieveAccessToken($this->service_name); $this->assertEquals($expected_token, $stored_token); } @@ -90,13 +90,13 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c { if ($cache_token) { - $this->token_storage->storeAccessToken($cache_token); + $this->token_storage->storeAccessToken($this->service_name, $cache_token); $token = $cache_token; } $this->setExpectedException($exception); - $stored_token = $this->token_storage->retrieve_access_token_by_session(); + $stored_token = $this->token_storage->retrieve_access_token_by_session($this->service_name); $this->assertEquals($token, $stored_token); } @@ -105,24 +105,24 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c $expected_token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES); // Store a token in the database - $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->service_name, $this->token_storage_table); - $temp_storage->storeAccessToken($expected_token); + $temp_storage = new phpbb_auth_provider_oauth_token_storage($this->db, $this->user, $this->token_storage_table); + $temp_storage->storeAccessToken($this->service_name, $expected_token); unset($temp_storage); // Test to see if the token can be retrieved - $stored_token = $this->token_storage->retrieve_access_token_by_session(); + $stored_token = $this->token_storage->retrieve_access_token_by_session($this->service_name); $this->assertEquals($expected_token, $stored_token); } public function test_storeAccessToken() { $token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ); - $this->token_storage->storeAccessToken($token); + $this->token_storage->storeAccessToken($this->service_name, $token); // Confirm that the token is cached - $extraParams = $this->token_storage->retrieveAccessToken()->getExtraParams(); + $extraParams = $this->token_storage->retrieveAccessToken($this->service_name)->getExtraParams(); $this->assertEquals( 'param', $extraParams['extra'] ); - $this->assertEquals( 'access', $this->token_storage->retrieveAccessToken()->getAccessToken() ); + $this->assertEquals( 'access', $this->token_storage->retrieveAccessToken($this->service_name)->getAccessToken() ); $row = $this->get_token_row_by_session_id($this->session_id); @@ -145,10 +145,10 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c { if ($token) { - $this->token_storage->storeAccessToken($token); + $this->token_storage->storeAccessToken($this->service_name, $token); } - $has_access_token = $this->token_storage->hasAccessToken(); + $has_access_token = $this->token_storage->hasAccessToken($this->service_name); $this->assertEquals($expected, $has_access_token); } @@ -159,32 +159,32 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c { if ($token) { - $this->token_storage->storeAccessToken($token); + $this->token_storage->storeAccessToken($this->service_name, $token); } - $has_access_token = $this->token_storage->has_access_token_by_session(); + $has_access_token = $this->token_storage->has_access_token_by_session($this->service_name); $this->assertEquals($expected, $has_access_token); } public function test_clearToken() { $token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ); - $this->token_storage->storeAccessToken($token); + $this->token_storage->storeAccessToken($this->service_name, $token); - $this->token_storage->clearToken(); + $this->token_storage->clearToken($this->service_name); // Check that the database has been cleared $row = $this->get_token_row_by_session_id($this->session_id); $this->assertFalse($row); // Check that the token is no longer in memory - $this->assertFalse($this->token_storage->hasAccessToken()); + $this->assertFalse($this->token_storage->hasAccessToken($this->service_name)); } public function test_set_user_id() { $token = new StdOAuth2Token('access', 'refresh', StdOAuth2Token::EOL_NEVER_EXPIRES, array('extra' => 'param') ); - $this->token_storage->storeAccessToken($token); + $this->token_storage->storeAccessToken($this->service_name, $token); $new_user_id = ANONYMOUS + 1; $this->token_storage->set_user_id($new_user_id); -- cgit v1.2.1 From 0c5a39a3ed382bef37005e59de66120e3cf205fa Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Mon, 2 Sep 2013 15:50:34 -0500 Subject: [ticket/11816] Test !$DEFINITION PHPBB3-11816 --- tests/template/template_test.php | 2 +- tests/template/templates/define.html | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/template/template_test.php b/tests/template/template_test.php index 0473218353..94289842df 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -151,7 +151,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case array(), array('test_loop' => array(array(), array(), array(), array(), array(), array(), array()), 'test' => array(array()), 'test.deep' => array(array()), 'test.deep.defines' => array(array())), array(), - "xyz\nabc\n\$VALUE == 'abc'\n(\$VALUE == 'abc')\nabc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?", + "xyz\nabc\n\$VALUE == 'abc'\n(\$VALUE == 'abc')\n(!\$DOESNT_EXIST)\nabc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?", ), array( 'define_advanced.html', diff --git a/tests/template/templates/define.html b/tests/template/templates/define.html index 12842ad387..e96d14e813 100644 --- a/tests/template/templates/define.html +++ b/tests/template/templates/define.html @@ -10,6 +10,9 @@ $VALUE == 'abc' ($VALUE == 'abc') + +(!$DOESNT_EXIST) + {$INCLUDED_VALUE} {$VALUE} -- cgit v1.2.1 From ae18f921ea61b20b026c4679b5b27cf40825f5dd Mon Sep 17 00:00:00 2001 From: Joseph Warner Date: Mon, 2 Sep 2013 16:52:24 -0400 Subject: [feature/oauth] More small fixes PHPBB3-11673 --- tests/auth/provider_oauth_token_storage_test.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/auth/provider_oauth_token_storage_test.php b/tests/auth/provider_oauth_token_storage_test.php index 223d4dfb93..401f049405 100644 --- a/tests/auth/provider_oauth_token_storage_test.php +++ b/tests/auth/provider_oauth_token_storage_test.php @@ -197,7 +197,7 @@ class phpbb_auth_provider_oauth_token_storage_test extends phpbb_database_test_c { // Test that the token is stored in the database $sql = 'SELECT * FROM phpbb_oauth_tokens - WHERE session_id = \'' . $session_id . '\''; + WHERE session_id = \'' . $this->db->sql_escape($session_id) . '\''; $result = $this->db->sql_query($sql); $row = $this->db->sql_fetchrow($result); $this->db->sql_freeresult($result); -- cgit v1.2.1 From c8d5ec892745f9bfc784cd8f7f632fee4a371ff7 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Mon, 2 Sep 2013 16:35:42 -0500 Subject: [ticket/11812] Fix empty define PHPBB3-11812 --- tests/template/template_test.php | 2 +- tests/template/templates/define.html | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/template/template_test.php b/tests/template/template_test.php index 38eb072df8..f2e3903458 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -158,7 +158,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case array(), array('test_loop' => array(array(), array(), array(), array(), array(), array(), array()), 'test' => array(array()), 'test.deep' => array(array()), 'test.deep.defines' => array(array())), array(), - "xyz\nabc\n\$VALUE == 'abc'abc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?", + "xyz\nabc\n\$VALUE == 'abc'abc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?\n[]", ), array( 'define_advanced.html', diff --git a/tests/template/templates/define.html b/tests/template/templates/define.html index 66e874ca63..e6c8ef49c9 100644 --- a/tests/template/templates/define.html +++ b/tests/template/templates/define.html @@ -14,3 +14,5 @@ $VALUE == 'abc' {$VALUE} {$VALUE} + +[{$VALUE}] -- cgit v1.2.1 From 010da72f64ce325c27fb68c5c142ec01e1e53e61 Mon Sep 17 00:00:00 2001 From: David King Date: Tue, 3 Sep 2013 16:16:23 -0700 Subject: [ticket/11824] Add option for mod_rewrite PHPBB3-11824 --- tests/controller/helper_url_test.php | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) (limited to 'tests') diff --git a/tests/controller/helper_url_test.php b/tests/controller/helper_url_test.php index 49635332a7..082184d482 100644 --- a/tests/controller/helper_url_test.php +++ b/tests/controller/helper_url_test.php @@ -15,28 +15,28 @@ class phpbb_controller_helper_url_test extends phpbb_test_case public function helper_url_data() { return array( - array('foo/bar?t=1&f=2', false, true, false, 'foo/bar?t=1&f=2', 'parameters in url-argument'), - array('foo/bar', 't=1&f=2', true, false, 'foo/bar?t=1&f=2', 'parameters in params-argument using amp'), - array('foo/bar', 't=1&f=2', false, false, 'foo/bar?t=1&f=2', 'parameters in params-argument using &'), - array('foo/bar', array('t' => 1, 'f' => 2), true, false, 'foo/bar?t=1&f=2', 'parameters in params-argument as array'), + array('foo/bar?t=1&f=2', false, true, false, 'app.php/foo/bar?t=1&f=2', 'parameters in url-argument'), + array('foo/bar', 't=1&f=2', true, false, 'app.php/foo/bar?t=1&f=2', 'parameters in params-argument using amp'), + array('foo/bar', 't=1&f=2', false, false, 'app.php/foo/bar?t=1&f=2', 'parameters in params-argument using &'), + array('foo/bar', array('t' => 1, 'f' => 2), true, false, 'app.php/foo/bar?t=1&f=2', 'parameters in params-argument as array'), // Custom sid parameter - array('foo/bar', 't=1&f=2', true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid', 'using session_id'), + array('foo/bar', 't=1&f=2', true, 'custom-sid', 'app.php/foo/bar?t=1&f=2&sid=custom-sid', 'using session_id'), // Testing anchors - array('foo/bar?t=1&f=2#anchor', false, true, false, 'foo/bar?t=1&f=2#anchor', 'anchor in url-argument'), - array('foo/bar', 't=1&f=2#anchor', true, false, 'foo/bar?t=1&f=2#anchor', 'anchor in params-argument'), - array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, false, 'foo/bar?t=1&f=2#anchor', 'anchor in params-argument (array)'), + array('foo/bar?t=1&f=2#anchor', false, true, false, 'app.php/foo/bar?t=1&f=2#anchor', 'anchor in url-argument'), + array('foo/bar', 't=1&f=2#anchor', true, false, 'app.php/foo/bar?t=1&f=2#anchor', 'anchor in params-argument'), + array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, false, 'app.php/foo/bar?t=1&f=2#anchor', 'anchor in params-argument (array)'), // Anchors and custom sid - array('foo/bar?t=1&f=2#anchor', false, true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in url-argument using session_id'), - array('foo/bar', 't=1&f=2#anchor', true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument using session_id'), - array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument (array) using session_id'), + array('foo/bar?t=1&f=2#anchor', false, true, 'custom-sid', 'app.php/foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in url-argument using session_id'), + array('foo/bar', 't=1&f=2#anchor', true, 'custom-sid', 'app.php/foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument using session_id'), + array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, 'custom-sid', 'app.php/foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument (array) using session_id'), // Empty parameters should not append the & - array('foo/bar', false, true, false, 'foo/bar', 'no params using bool false'), - array('foo/bar', '', true, false, 'foo/bar', 'no params using empty string'), - array('foo/bar', array(), true, false, 'foo/bar', 'no params using empty array'), + array('foo/bar', false, true, false, 'app.php/foo/bar', 'no params using bool false'), + array('foo/bar', '', true, false, 'app.php/foo/bar', 'no params using empty string'), + array('foo/bar', array(), true, false, 'app.php/foo/bar', 'no params using empty array'), ); } @@ -51,9 +51,9 @@ class phpbb_controller_helper_url_test extends phpbb_test_case $this->user = $this->getMock('phpbb_user'); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - - $request = new phpbb_mock_request($_GET, $_POST, $_COOKIE, $_SERVER, false, $_FILES); - $helper = new phpbb_controller_helper($this->template, $this->user, $request, '', 'php'); + // We don't use mod_rewrite in tests + $config = new phpbb_config(array('enable_mod_rewrite' => '0')); + $helper = new phpbb_controller_helper($this->template, $this->user, $config, '', 'php'); $this->assertEquals($helper->url($route, $params, $is_amp, $session_id), $expected); } } -- cgit v1.2.1 From 11317ef261c7811ea137d19ee38593d289ea6150 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Fri, 6 Sep 2013 09:04:40 -0500 Subject: [ticket/11816] !$DOESNT_EXIST test PHPBB3-11816 --- tests/template/template_test.php | 2 +- tests/template/templates/define.html | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/template/template_test.php b/tests/template/template_test.php index 94289842df..b41193d59e 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -151,7 +151,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case array(), array('test_loop' => array(array(), array(), array(), array(), array(), array(), array()), 'test' => array(array()), 'test.deep' => array(array()), 'test.deep.defines' => array(array())), array(), - "xyz\nabc\n\$VALUE == 'abc'\n(\$VALUE == 'abc')\n(!\$DOESNT_EXIST)\nabc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?", + "xyz\nabc\n\$VALUE == 'abc'\n(\$VALUE == 'abc')\n!\$DOESNT_EXIST\n(!\$DOESNT_EXIST)\nabc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?", ), array( 'define_advanced.html', diff --git a/tests/template/templates/define.html b/tests/template/templates/define.html index e96d14e813..a56fece912 100644 --- a/tests/template/templates/define.html +++ b/tests/template/templates/define.html @@ -10,6 +10,9 @@ $VALUE == 'abc' ($VALUE == 'abc') + +!$DOESNT_EXIST + (!$DOESNT_EXIST) -- cgit v1.2.1 From b17d15276f87073f22fe861f7c04edcb3138e582 Mon Sep 17 00:00:00 2001 From: Nathan Date: Fri, 6 Sep 2013 12:36:40 -0500 Subject: [ticket/11831] getAttribute was replaced with attr PHPBB3-11831 --- tests/test_framework/phpbb_functional_test_case.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index 1ced462c76..00b31212b2 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -661,7 +661,7 @@ class phpbb_functional_test_case extends phpbb_test_case $hidden_fields = array( $crawler->filter('[type="hidden"]')->each(function ($node, $i) { - return array('name' => $node->getAttribute('name'), 'value' => $node->getAttribute('value')); + return array('name' => $node->attr('name'), 'value' => $node->attr('value')); }), ); -- cgit v1.2.1 From 4eab9a8c5361d08bea4d054b44ac0324ece881a4 Mon Sep 17 00:00:00 2001 From: David King Date: Fri, 6 Sep 2013 13:14:07 -0700 Subject: [ticket/11824] Add tests for urls with mod_rewrite enabled PHPBB3-11824 --- tests/controller/helper_url_test.php | 51 +++++++++++++++++++++++++++++++++--- 1 file changed, 48 insertions(+), 3 deletions(-) (limited to 'tests') diff --git a/tests/controller/helper_url_test.php b/tests/controller/helper_url_test.php index 082184d482..8a793ea0a4 100644 --- a/tests/controller/helper_url_test.php +++ b/tests/controller/helper_url_test.php @@ -12,7 +12,7 @@ require_once dirname(__FILE__) . '/../../phpBB/includes/functions.php'; class phpbb_controller_helper_url_test extends phpbb_test_case { - public function helper_url_data() + public function helper_url_data_no_rewrite() { return array( array('foo/bar?t=1&f=2', false, true, false, 'app.php/foo/bar?t=1&f=2', 'parameters in url-argument'), @@ -40,10 +40,38 @@ class phpbb_controller_helper_url_test extends phpbb_test_case ); } + public function helper_url_data_with_rewrite() + { + return array( + array('foo/bar?t=1&f=2', false, true, false, 'foo/bar?t=1&f=2', 'parameters in url-argument'), + array('foo/bar', 't=1&f=2', true, false, 'foo/bar?t=1&f=2', 'parameters in params-argument using amp'), + array('foo/bar', 't=1&f=2', false, false, 'foo/bar?t=1&f=2', 'parameters in params-argument using &'), + array('foo/bar', array('t' => 1, 'f' => 2), true, false, 'foo/bar?t=1&f=2', 'parameters in params-argument as array'), + + // Custom sid parameter + array('foo/bar', 't=1&f=2', true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid', 'using session_id'), + + // Testing anchors + array('foo/bar?t=1&f=2#anchor', false, true, false, 'foo/bar?t=1&f=2#anchor', 'anchor in url-argument'), + array('foo/bar', 't=1&f=2#anchor', true, false, 'foo/bar?t=1&f=2#anchor', 'anchor in params-argument'), + array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, false, 'foo/bar?t=1&f=2#anchor', 'anchor in params-argument (array)'), + + // Anchors and custom sid + array('foo/bar?t=1&f=2#anchor', false, true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in url-argument using session_id'), + array('foo/bar', 't=1&f=2#anchor', true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument using session_id'), + array('foo/bar', array('t' => 1, 'f' => 2, '#' => 'anchor'), true, 'custom-sid', 'foo/bar?t=1&f=2&sid=custom-sid#anchor', 'anchor in params-argument (array) using session_id'), + + // Empty parameters should not append the & + array('foo/bar', false, true, false, 'foo/bar', 'no params using bool false'), + array('foo/bar', '', true, false, 'foo/bar', 'no params using empty string'), + array('foo/bar', array(), true, false, 'foo/bar', 'no params using empty array'), + ); + } + /** - * @dataProvider helper_url_data + * @dataProvider helper_url_data_no_rewrite() */ - public function test_helper_url($route, $params, $is_amp, $session_id, $expected, $description) + public function test_helper_url_no_rewrite($route, $params, $is_amp, $session_id, $expected, $description) { global $phpbb_dispatcher, $phpbb_root_path, $phpEx; @@ -56,4 +84,21 @@ class phpbb_controller_helper_url_test extends phpbb_test_case $helper = new phpbb_controller_helper($this->template, $this->user, $config, '', 'php'); $this->assertEquals($helper->url($route, $params, $is_amp, $session_id), $expected); } + + /** + * @dataProvider helper_url_data_with_rewrite() + */ + public function test_helper_url_with_rewrite($route, $params, $is_amp, $session_id, $expected, $description) + { + global $phpbb_dispatcher, $phpbb_root_path, $phpEx; + + $phpbb_dispatcher = new phpbb_mock_event_dispatcher; + $this->user = $this->getMock('phpbb_user'); + $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); + + // We don't use mod_rewrite in tests + $config = new phpbb_config(array('enable_mod_rewrite' => '1')); + $helper = new phpbb_controller_helper($this->template, $this->user, $config, '', 'php'); + $this->assertEquals($helper->url($route, $params, $is_amp, $session_id), $expected); + } } -- cgit v1.2.1 From f30b87519e9ead41525e1979cbce874e8a84e2b8 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Mon, 9 Sep 2013 17:28:56 -0500 Subject: [ticket/11832] Inject dependencies for phpbb_get_web_root_path (also moving) Function moved from phpbb_get_web_root_path to filesystem::get_web_root_path PHPBB3-11832 --- tests/dbal/migrator_test.php | 2 +- tests/extension/manager_test.php | 2 +- tests/extension/metadata_manager_test.php | 2 +- tests/filesystem/clean_path_test.php | 2 +- tests/mock/extension_manager.php | 2 +- tests/test_framework/phpbb_functional_test_case.php | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) (limited to 'tests') diff --git a/tests/dbal/migrator_test.php b/tests/dbal/migrator_test.php index 9e55e4dd35..4be1fbe176 100644 --- a/tests/dbal/migrator_test.php +++ b/tests/dbal/migrator_test.php @@ -59,7 +59,7 @@ class phpbb_dbal_migrator_test extends phpbb_database_test_case $container, $this->db, $this->config, - new phpbb_filesystem(), + new phpbb_filesystem(dirname(__FILE__) . '/../../phpBB/'), 'phpbb_ext', dirname(__FILE__) . '/../../phpBB/', 'php', diff --git a/tests/extension/manager_test.php b/tests/extension/manager_test.php index a23e5a18d9..2da6ba5df5 100644 --- a/tests/extension/manager_test.php +++ b/tests/extension/manager_test.php @@ -114,7 +114,7 @@ class phpbb_extension_manager_test extends phpbb_database_test_case $container, $db, $config, - new phpbb_filesystem(), + new phpbb_filesystem($phpbb_root_path), 'phpbb_ext', dirname(__FILE__) . '/', $php_ext, diff --git a/tests/extension/metadata_manager_test.php b/tests/extension/metadata_manager_test.php index e5bd29092e..594568b805 100644 --- a/tests/extension/metadata_manager_test.php +++ b/tests/extension/metadata_manager_test.php @@ -65,7 +65,7 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case $container, $this->db, $this->config, - new phpbb_filesystem(), + new phpbb_filesystem($this->phpbb_root_path), 'phpbb_ext', $this->phpbb_root_path, $this->phpEx, diff --git a/tests/filesystem/clean_path_test.php b/tests/filesystem/clean_path_test.php index 50951fc88c..88352838bb 100644 --- a/tests/filesystem/clean_path_test.php +++ b/tests/filesystem/clean_path_test.php @@ -14,7 +14,7 @@ class phpbb_filesystem_clean_path_test extends phpbb_test_case public function setUp() { parent::setUp(); - $this->filesystem = new phpbb_filesystem(); + $this->filesystem = new phpbb_filesystem(__DIR__ . './../../phpBB/'); } public function clean_path_data() diff --git a/tests/mock/extension_manager.php b/tests/mock/extension_manager.php index 10b3595206..28eec5930f 100644 --- a/tests/mock/extension_manager.php +++ b/tests/mock/extension_manager.php @@ -14,6 +14,6 @@ class phpbb_mock_extension_manager extends phpbb_extension_manager $this->phpbb_root_path = $phpbb_root_path; $this->php_ext = 'php'; $this->extensions = $extensions; - $this->filesystem = new phpbb_filesystem(); + $this->filesystem = new phpbb_filesystem($phpbb_root_path); } } diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index ce748bb9cf..dedaf4cd68 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -203,7 +203,7 @@ class phpbb_functional_test_case extends phpbb_test_case $container, $db, $config, - new phpbb_filesystem(), + new phpbb_filesystem($phpbb_root_path), self::$config['table_prefix'] . 'ext', dirname(__FILE__) . '/', $php_ext, -- cgit v1.2.1 From 6692db892f538d3a72f1dbd06af9a94f24a9da9a Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Mon, 9 Sep 2013 18:19:50 -0500 Subject: [ticket/11832] update_web_root_path helper and tests PHPBB3-11832 --- tests/filesystem/web_root_path_test.php | 70 +++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 tests/filesystem/web_root_path_test.php (limited to 'tests') diff --git a/tests/filesystem/web_root_path_test.php b/tests/filesystem/web_root_path_test.php new file mode 100644 index 0000000000..7b44ac8c67 --- /dev/null +++ b/tests/filesystem/web_root_path_test.php @@ -0,0 +1,70 @@ +set_phpbb_root_path(); + + $this->filesystem = new phpbb_filesystem($this->phpbb_root_path); + } + + /** + * Set the phpbb_root_path + * + * This is necessary because dataProvider functions are called + * before setUp or setUpBeforeClass; so we must set the path + * any time we wish to use it in one of these functions (and + * also in general for everything else) + */ + public function set_phpbb_root_path() + { + $this->phpbb_root_path = __DIR__ . './../../phpBB/'; + } + + public function test_get_web_root_path() + { + // Symfony Request = null, so always should return phpbb_root_path + $this->assertEquals($this->phpbb_root_path, $this->filesystem->get_web_root_path()); + } + + public function update_web_root_path_data() + { + $this->set_phpbb_root_path(); + + return array( + array( + $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . 'test.php', + ), + array( + 'test.php', + $this->phpbb_root_path . 'test.php', + ), + array( + $this->phpbb_root_path . $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . $this->phpbb_root_path . 'test.php', + ), + ); + } + + /** + * @dataProvider update_web_root_path_data + */ + public function test_update_web_root_path($input, $expected) + { + $this->assertEquals($expected, $this->filesystem->update_web_root_path($input)); + } +} -- cgit v1.2.1 From 289bc2a411aac4f0adb9b7b649dfd9ef073eaed9 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Mon, 9 Sep 2013 18:27:12 -0500 Subject: [ticket/11832] Fix log tests PHPBB3-11832 --- tests/log/function_view_log_test.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/log/function_view_log_test.php b/tests/log/function_view_log_test.php index 6827aaa1b6..a634863fb6 100644 --- a/tests/log/function_view_log_test.php +++ b/tests/log/function_view_log_test.php @@ -23,8 +23,10 @@ class phpbb_log_function_view_log_test extends phpbb_database_test_case public static function view_log_function_data() { - global $phpEx, $phpbb_dispatcher; + global $phpEx, $phpbb_dispatcher, $phpbb_container, $phpbb_root_path; $phpbb_dispatcher = new phpbb_mock_event_dispatcher(); + $phpbb_container = new phpbb_mock_container_builder(); + $phpbb_container->set('filesystem', new phpbb_filesystem($phpbb_root_path)); $expected_data_sets = array( 1 => array( -- cgit v1.2.1 From 5e09afa0bc3ff9014812282fd4454f0df54b9dfd Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Mon, 9 Sep 2013 18:47:25 -0500 Subject: [ticket/11832] Make $phpbb_container a global initiated by the framework Setup common items needed from the container (e.g. filesystem) PHPBB3-11832 --- tests/acp_board/select_auth_method_test.php | 5 +---- tests/content_visibility/delete_post_test.php | 7 +++---- tests/log/function_view_log_test.php | 4 +--- tests/test_framework/phpbb_database_test_case.php | 11 +++++++++++ tests/test_framework/phpbb_test_case.php | 11 +++++++++++ 5 files changed, 27 insertions(+), 11 deletions(-) (limited to 'tests') diff --git a/tests/acp_board/select_auth_method_test.php b/tests/acp_board/select_auth_method_test.php index 91aa5d1232..aaad05b33a 100644 --- a/tests/acp_board/select_auth_method_test.php +++ b/tests/acp_board/select_auth_method_test.php @@ -27,10 +27,7 @@ class phpbb_acp_board_select_auth_method_test extends phpbb_test_case { parent::setUp(); - global $phpbb_container; - $phpbb_container = new phpbb_mock_container_builder(); - - $phpbb_container->set('auth.provider_collection', array( + $this->phpbb_container->set('auth.provider_collection', array( 'auth.provider.acp_board_valid' => new phpbb_auth_provider_acp_board_valid, 'auth.provider.acp_board_invalid' => new phpbb_auth_provider_acp_board_invalid, )); diff --git a/tests/content_visibility/delete_post_test.php b/tests/content_visibility/delete_post_test.php index 6234aac9ad..f5df5e9cba 100644 --- a/tests/content_visibility/delete_post_test.php +++ b/tests/content_visibility/delete_post_test.php @@ -262,7 +262,7 @@ class phpbb_content_visibility_delete_post_test extends phpbb_database_test_case */ public function test_delete_post($forum_id, $topic_id, $post_id, $data, $is_soft, $reason, $expected_posts, $expected_topic, $expected_forum) { - global $auth, $cache, $config, $db, $phpbb_container, $phpbb_root_path, $phpEx; + global $auth, $cache, $config, $db, $phpbb_root_path, $phpEx; $config['search_type'] = 'phpbb_mock_search'; $cache = new phpbb_mock_cache; @@ -279,9 +279,8 @@ class phpbb_content_visibility_delete_post_test extends phpbb_database_test_case ))); $user = $this->getMock('phpbb_user'); - $phpbb_container = new phpbb_mock_container_builder(); - $phpbb_container->set('notification_manager', new phpbb_mock_notification_manager()); - $phpbb_container->set('content.visibility', new phpbb_content_visibility($auth, $db, $user, $phpbb_root_path, $phpEx, FORUMS_TABLE, POSTS_TABLE, TOPICS_TABLE, USERS_TABLE)); + $this->phpbb_container->set('notification_manager', new phpbb_mock_notification_manager()); + $this->phpbb_container->set('content.visibility', new phpbb_content_visibility($auth, $db, $user, $phpbb_root_path, $phpEx, FORUMS_TABLE, POSTS_TABLE, TOPICS_TABLE, USERS_TABLE)); delete_post($forum_id, $topic_id, $post_id, $data, $is_soft, $reason); diff --git a/tests/log/function_view_log_test.php b/tests/log/function_view_log_test.php index a634863fb6..6827aaa1b6 100644 --- a/tests/log/function_view_log_test.php +++ b/tests/log/function_view_log_test.php @@ -23,10 +23,8 @@ class phpbb_log_function_view_log_test extends phpbb_database_test_case public static function view_log_function_data() { - global $phpEx, $phpbb_dispatcher, $phpbb_container, $phpbb_root_path; + global $phpEx, $phpbb_dispatcher; $phpbb_dispatcher = new phpbb_mock_event_dispatcher(); - $phpbb_container = new phpbb_mock_container_builder(); - $phpbb_container->set('filesystem', new phpbb_filesystem($phpbb_root_path)); $expected_data_sets = array( 1 => array( diff --git a/tests/test_framework/phpbb_database_test_case.php b/tests/test_framework/phpbb_database_test_case.php index c72ea5f765..124706afa6 100644 --- a/tests/test_framework/phpbb_database_test_case.php +++ b/tests/test_framework/phpbb_database_test_case.php @@ -17,9 +17,20 @@ abstract class phpbb_database_test_case extends PHPUnit_Extensions_Database_Test protected $fixture_xml_data; + protected $phpbb_container; + public function __construct($name = NULL, array $data = array(), $dataName = '') { parent::__construct($name, $data, $dataName); + + global $phpbb_container, $phpbb_root_path; + + // Setup the container for global usage + $this->phpbb_container = $phpbb_container = new phpbb_mock_container_builder(); + + // Set some commonly needed systems up + $phpbb_container->set('filesystem', new phpbb_filesystem($phpbb_root_path)); + $this->backupStaticAttributesBlacklist += array( 'PHP_CodeCoverage' => array('instance'), 'PHP_CodeCoverage_Filter' => array('instance'), diff --git a/tests/test_framework/phpbb_test_case.php b/tests/test_framework/phpbb_test_case.php index 8b16f02638..48c2f48887 100644 --- a/tests/test_framework/phpbb_test_case.php +++ b/tests/test_framework/phpbb_test_case.php @@ -11,9 +11,20 @@ class phpbb_test_case extends PHPUnit_Framework_TestCase { protected $test_case_helpers; + protected $phpbb_container; + public function __construct($name = NULL, array $data = array(), $dataName = '') { parent::__construct($name, $data, $dataName); + + global $phpbb_container, $phpbb_root_path; + + // Setup the container for global usage + $this->phpbb_container = $phpbb_container = new phpbb_mock_container_builder(); + + // Set some commonly needed systems up + $phpbb_container->set('filesystem', new phpbb_filesystem($phpbb_root_path)); + $this->backupStaticAttributesBlacklist += array( 'PHP_CodeCoverage' => array('instance'), 'PHP_CodeCoverage_Filter' => array('instance'), -- cgit v1.2.1 From d5f93f5ce4c25b4bd0aff9473eb47eeeb1afccd4 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Tue, 10 Sep 2013 10:06:13 -0500 Subject: Revert "[ticket/11832] Make $phpbb_container a global initiated by the framework" This reverts commit 5e09afa0bc3ff9014812282fd4454f0df54b9dfd. --- tests/acp_board/select_auth_method_test.php | 5 ++++- tests/content_visibility/delete_post_test.php | 7 ++++--- tests/log/function_view_log_test.php | 4 +++- tests/test_framework/phpbb_database_test_case.php | 11 ----------- tests/test_framework/phpbb_test_case.php | 11 ----------- 5 files changed, 11 insertions(+), 27 deletions(-) (limited to 'tests') diff --git a/tests/acp_board/select_auth_method_test.php b/tests/acp_board/select_auth_method_test.php index aaad05b33a..91aa5d1232 100644 --- a/tests/acp_board/select_auth_method_test.php +++ b/tests/acp_board/select_auth_method_test.php @@ -27,7 +27,10 @@ class phpbb_acp_board_select_auth_method_test extends phpbb_test_case { parent::setUp(); - $this->phpbb_container->set('auth.provider_collection', array( + global $phpbb_container; + $phpbb_container = new phpbb_mock_container_builder(); + + $phpbb_container->set('auth.provider_collection', array( 'auth.provider.acp_board_valid' => new phpbb_auth_provider_acp_board_valid, 'auth.provider.acp_board_invalid' => new phpbb_auth_provider_acp_board_invalid, )); diff --git a/tests/content_visibility/delete_post_test.php b/tests/content_visibility/delete_post_test.php index f5df5e9cba..6234aac9ad 100644 --- a/tests/content_visibility/delete_post_test.php +++ b/tests/content_visibility/delete_post_test.php @@ -262,7 +262,7 @@ class phpbb_content_visibility_delete_post_test extends phpbb_database_test_case */ public function test_delete_post($forum_id, $topic_id, $post_id, $data, $is_soft, $reason, $expected_posts, $expected_topic, $expected_forum) { - global $auth, $cache, $config, $db, $phpbb_root_path, $phpEx; + global $auth, $cache, $config, $db, $phpbb_container, $phpbb_root_path, $phpEx; $config['search_type'] = 'phpbb_mock_search'; $cache = new phpbb_mock_cache; @@ -279,8 +279,9 @@ class phpbb_content_visibility_delete_post_test extends phpbb_database_test_case ))); $user = $this->getMock('phpbb_user'); - $this->phpbb_container->set('notification_manager', new phpbb_mock_notification_manager()); - $this->phpbb_container->set('content.visibility', new phpbb_content_visibility($auth, $db, $user, $phpbb_root_path, $phpEx, FORUMS_TABLE, POSTS_TABLE, TOPICS_TABLE, USERS_TABLE)); + $phpbb_container = new phpbb_mock_container_builder(); + $phpbb_container->set('notification_manager', new phpbb_mock_notification_manager()); + $phpbb_container->set('content.visibility', new phpbb_content_visibility($auth, $db, $user, $phpbb_root_path, $phpEx, FORUMS_TABLE, POSTS_TABLE, TOPICS_TABLE, USERS_TABLE)); delete_post($forum_id, $topic_id, $post_id, $data, $is_soft, $reason); diff --git a/tests/log/function_view_log_test.php b/tests/log/function_view_log_test.php index 6827aaa1b6..a634863fb6 100644 --- a/tests/log/function_view_log_test.php +++ b/tests/log/function_view_log_test.php @@ -23,8 +23,10 @@ class phpbb_log_function_view_log_test extends phpbb_database_test_case public static function view_log_function_data() { - global $phpEx, $phpbb_dispatcher; + global $phpEx, $phpbb_dispatcher, $phpbb_container, $phpbb_root_path; $phpbb_dispatcher = new phpbb_mock_event_dispatcher(); + $phpbb_container = new phpbb_mock_container_builder(); + $phpbb_container->set('filesystem', new phpbb_filesystem($phpbb_root_path)); $expected_data_sets = array( 1 => array( diff --git a/tests/test_framework/phpbb_database_test_case.php b/tests/test_framework/phpbb_database_test_case.php index 124706afa6..c72ea5f765 100644 --- a/tests/test_framework/phpbb_database_test_case.php +++ b/tests/test_framework/phpbb_database_test_case.php @@ -17,20 +17,9 @@ abstract class phpbb_database_test_case extends PHPUnit_Extensions_Database_Test protected $fixture_xml_data; - protected $phpbb_container; - public function __construct($name = NULL, array $data = array(), $dataName = '') { parent::__construct($name, $data, $dataName); - - global $phpbb_container, $phpbb_root_path; - - // Setup the container for global usage - $this->phpbb_container = $phpbb_container = new phpbb_mock_container_builder(); - - // Set some commonly needed systems up - $phpbb_container->set('filesystem', new phpbb_filesystem($phpbb_root_path)); - $this->backupStaticAttributesBlacklist += array( 'PHP_CodeCoverage' => array('instance'), 'PHP_CodeCoverage_Filter' => array('instance'), diff --git a/tests/test_framework/phpbb_test_case.php b/tests/test_framework/phpbb_test_case.php index 48c2f48887..8b16f02638 100644 --- a/tests/test_framework/phpbb_test_case.php +++ b/tests/test_framework/phpbb_test_case.php @@ -11,20 +11,9 @@ class phpbb_test_case extends PHPUnit_Framework_TestCase { protected $test_case_helpers; - protected $phpbb_container; - public function __construct($name = NULL, array $data = array(), $dataName = '') { parent::__construct($name, $data, $dataName); - - global $phpbb_container, $phpbb_root_path; - - // Setup the container for global usage - $this->phpbb_container = $phpbb_container = new phpbb_mock_container_builder(); - - // Set some commonly needed systems up - $phpbb_container->set('filesystem', new phpbb_filesystem($phpbb_root_path)); - $this->backupStaticAttributesBlacklist += array( 'PHP_CodeCoverage' => array('instance'), 'PHP_CodeCoverage_Filter' => array('instance'), -- cgit v1.2.1 From 3684d8e9711516264fedac0519262891d9894ea1 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Tue, 10 Sep 2013 10:13:26 -0500 Subject: [ticket/11832] Use $phpbb_filesystem instead of the container in append_sid PHPBB3-11832 --- tests/filesystem/web_root_path_test.php | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/filesystem/web_root_path_test.php b/tests/filesystem/web_root_path_test.php index 7b44ac8c67..3c530619dc 100644 --- a/tests/filesystem/web_root_path_test.php +++ b/tests/filesystem/web_root_path_test.php @@ -18,7 +18,9 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case $this->set_phpbb_root_path(); - $this->filesystem = new phpbb_filesystem($this->phpbb_root_path); + global $phpbb_filesystem; + + $phpbb_filesystem = $this->filesystem = new phpbb_filesystem($this->phpbb_root_path); } /** -- cgit v1.2.1 From c46637990e5937881f98d9711783fe9982532884 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Tue, 10 Sep 2013 10:14:57 -0500 Subject: [ticket/11832] Use dirname(__FILE__) PHPBB3-11832 --- tests/filesystem/web_root_path_test.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/filesystem/web_root_path_test.php b/tests/filesystem/web_root_path_test.php index 3c530619dc..3c9637fe06 100644 --- a/tests/filesystem/web_root_path_test.php +++ b/tests/filesystem/web_root_path_test.php @@ -33,7 +33,7 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case */ public function set_phpbb_root_path() { - $this->phpbb_root_path = __DIR__ . './../../phpBB/'; + $this->phpbb_root_path = dirname(__FILE__) . './../../phpBB/'; } public function test_get_web_root_path() -- cgit v1.2.1 From 3a4efa79592616ac099e95d07e9aed52bc5a19a3 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Tue, 10 Sep 2013 11:15:24 -0500 Subject: [ticket/11832] More extensive testing PHPBB3-11832 --- tests/filesystem/web_root_path_test.php | 49 ++++++++++++++++++++++++++++----- 1 file changed, 42 insertions(+), 7 deletions(-) (limited to 'tests') diff --git a/tests/filesystem/web_root_path_test.php b/tests/filesystem/web_root_path_test.php index 3c9637fe06..badc2fab58 100644 --- a/tests/filesystem/web_root_path_test.php +++ b/tests/filesystem/web_root_path_test.php @@ -18,9 +18,7 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case $this->set_phpbb_root_path(); - global $phpbb_filesystem; - - $phpbb_filesystem = $this->filesystem = new phpbb_filesystem($this->phpbb_root_path); + $this->filesystem = new phpbb_filesystem($this->phpbb_root_path); } /** @@ -49,7 +47,6 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case return array( array( $this->phpbb_root_path . 'test.php', - $this->phpbb_root_path . 'test.php', ), array( 'test.php', @@ -57,7 +54,28 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case ), array( $this->phpbb_root_path . $this->phpbb_root_path . 'test.php', - $this->phpbb_root_path . $this->phpbb_root_path . 'test.php', + ), + array( + $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . 'test.php', + '/', + ), + array( + $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . 'test.php', + '//', + ), + array( + $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . '../test.php', + '//', + 'foo/bar.php', + 'bar.php', + ), + array( + $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . '../../test.php', + '////', ), ); } @@ -65,8 +83,25 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case /** * @dataProvider update_web_root_path_data */ - public function test_update_web_root_path($input, $expected) + public function test_update_web_root_path($input, $expected = null, $getPathInfo = null, $getRequestUri = null, $getScriptName = null) { - $this->assertEquals($expected, $this->filesystem->update_web_root_path($input)); + $expected = ($expected === null) ? $input : $expected; + + $symfony_request = null; + if ($getPathInfo !== null) + { + $symfony_request = $this->getMock("Symfony\Component\HttpFoundation\Request"); + $symfony_request->expects($this->any()) + ->method('getPathInfo') + ->will($this->returnValue($getPathInfo)); + $symfony_request->expects($this->any()) + ->method('getRequestUri') + ->will($this->returnValue($getRequestUri)); + $symfony_request->expects($this->any()) + ->method('getScriptName') + ->will($this->returnValue($getScriptName)); + } + + $this->assertEquals($expected, $this->filesystem->update_web_root_path($input, $symfony_request)); } } -- cgit v1.2.1 From b06c8a80d15c52dd53b12065d5e6e9d56f203ceb Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Thu, 12 Sep 2013 10:25:49 -0500 Subject: [ticket/11832] Fix the web path corrections Add some real life examples to test PHPBB3-11832 --- tests/filesystem/web_root_path_test.php | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'tests') diff --git a/tests/filesystem/web_root_path_test.php b/tests/filesystem/web_root_path_test.php index badc2fab58..8e0ba278e0 100644 --- a/tests/filesystem/web_root_path_test.php +++ b/tests/filesystem/web_root_path_test.php @@ -62,7 +62,7 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case ), array( $this->phpbb_root_path . 'test.php', - $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . '../test.php', '//', ), array( @@ -75,7 +75,16 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case array( $this->phpbb_root_path . 'test.php', $this->phpbb_root_path . '../../test.php', - '////', + '/foo/template', + '/phpbb3-fork/phpBB/app.php/foo/template', + '/phpbb3-fork/phpBB/app.php', + ), + array( + $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . '../test.php', + '/foo/template', + '/phpbb3-fork/phpBB/foo/template', + '/phpbb3-fork/phpBB/app.php', ), ); } -- cgit v1.2.1 From 2f91fc9f6c6d479fdf286fa34047b1599b89d87d Mon Sep 17 00:00:00 2001 From: David King Date: Thu, 12 Sep 2013 09:22:51 -0700 Subject: [ticket/11824] Reorganize test file PHPBB3-11824 --- tests/controller/helper_url_test.php | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) (limited to 'tests') diff --git a/tests/controller/helper_url_test.php b/tests/controller/helper_url_test.php index 8a793ea0a4..da90947bb5 100644 --- a/tests/controller/helper_url_test.php +++ b/tests/controller/helper_url_test.php @@ -40,6 +40,23 @@ class phpbb_controller_helper_url_test extends phpbb_test_case ); } + /** + * @dataProvider helper_url_data_no_rewrite() + */ + public function test_helper_url_no_rewrite($route, $params, $is_amp, $session_id, $expected, $description) + { + global $phpbb_dispatcher, $phpbb_root_path, $phpEx; + + $phpbb_dispatcher = new phpbb_mock_event_dispatcher; + $this->user = $this->getMock('phpbb_user'); + $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); + + // We don't use mod_rewrite in these tests + $config = new phpbb_config(array('enable_mod_rewrite' => '0')); + $helper = new phpbb_controller_helper($this->template, $this->user, $config, '', 'php'); + $this->assertEquals($helper->url($route, $params, $is_amp, $session_id), $expected); + } + public function helper_url_data_with_rewrite() { return array( @@ -68,23 +85,6 @@ class phpbb_controller_helper_url_test extends phpbb_test_case ); } - /** - * @dataProvider helper_url_data_no_rewrite() - */ - public function test_helper_url_no_rewrite($route, $params, $is_amp, $session_id, $expected, $description) - { - global $phpbb_dispatcher, $phpbb_root_path, $phpEx; - - $phpbb_dispatcher = new phpbb_mock_event_dispatcher; - $this->user = $this->getMock('phpbb_user'); - $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - - // We don't use mod_rewrite in tests - $config = new phpbb_config(array('enable_mod_rewrite' => '0')); - $helper = new phpbb_controller_helper($this->template, $this->user, $config, '', 'php'); - $this->assertEquals($helper->url($route, $params, $is_amp, $session_id), $expected); - } - /** * @dataProvider helper_url_data_with_rewrite() */ @@ -96,7 +96,6 @@ class phpbb_controller_helper_url_test extends phpbb_test_case $this->user = $this->getMock('phpbb_user'); $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); - // We don't use mod_rewrite in tests $config = new phpbb_config(array('enable_mod_rewrite' => '1')); $helper = new phpbb_controller_helper($this->template, $this->user, $config, '', 'php'); $this->assertEquals($helper->url($route, $params, $is_amp, $session_id), $expected); -- cgit v1.2.1 From 8c2f73bb09dc1fa305b59c2adabdc47fd3d5afdb Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Thu, 12 Sep 2013 14:15:41 -0500 Subject: [ticket/11828] Fix greedy operators in lexer Use lazy operators and use stricter validation PHPBB3-11828 --- tests/template/template_test.php | 2 +- tests/template/templates/define.html | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/template/template_test.php b/tests/template/template_test.php index f2e3903458..e64493e59a 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -158,7 +158,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case array(), array('test_loop' => array(array(), array(), array(), array(), array(), array(), array()), 'test' => array(array()), 'test.deep' => array(array()), 'test.deep.defines' => array(array())), array(), - "xyz\nabc\n\$VALUE == 'abc'abc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?\n[]", + "xyz\nabc\n\$VALUE == 'abc'abc\nbar\nbar\nabc\ntest!@#$%^&*()_-=+{}[]:;\",<.>/?\n[]|foobar|", ), array( 'define_advanced.html', diff --git a/tests/template/templates/define.html b/tests/template/templates/define.html index e6c8ef49c9..f519078a5b 100644 --- a/tests/template/templates/define.html +++ b/tests/template/templates/define.html @@ -16,3 +16,4 @@ $VALUE == 'abc' {$VALUE} [{$VALUE}] +foobar|{$TEST}| -- cgit v1.2.1 From 45ecbae1edd32224dd6e2b1aaee5f289afddb7b9 Mon Sep 17 00:00:00 2001 From: rechosen Date: Fri, 13 Sep 2013 12:27:07 +0200 Subject: [ticket/11843] Add checking DEFINE variables with underscores to template_test To prevent the underscore in DEFINE variables from being forgotten again, the template tests now test INCLUDEing a file based on the contents of a DEFINE variable with underscores in it. PHPBB3-11843 --- tests/template/template_test.php | 2 +- tests/template/templates/include_define_variable.html | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/template/template_test.php b/tests/template/template_test.php index 1649604492..c28c7a70bc 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -237,7 +237,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case array('VARIABLE' => 'variable.html'), array(), array(), - 'variable.html', + 'variable.htmlvariable.html', ), array( 'include_loop_define.html', diff --git a/tests/template/templates/include_define_variable.html b/tests/template/templates/include_define_variable.html index aff9b574c2..fceeebf5df 100644 --- a/tests/template/templates/include_define_variable.html +++ b/tests/template/templates/include_define_variable.html @@ -1,2 +1,4 @@ + + -- cgit v1.2.1 From 658f6e204510b328509a0387eb9711617fdc3bee Mon Sep 17 00:00:00 2001 From: rechosen Date: Fri, 13 Sep 2013 13:48:00 +0200 Subject: [ticket/11843] Added newlines and included numbers in the DEFINE vars test Per suggestion of nickvergessen, I added newlines in the DEFINE variables with underscores test. Now if the test fails, it's easier to spot which part is failing. Also added a test for DEFINE variables containing numbers. PHPBB3-11843 --- tests/template/template_test.php | 2 +- tests/template/templates/include_define_variable.html | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'tests') diff --git a/tests/template/template_test.php b/tests/template/template_test.php index c28c7a70bc..2cca20f4c2 100644 --- a/tests/template/template_test.php +++ b/tests/template/template_test.php @@ -237,7 +237,7 @@ class phpbb_template_template_test extends phpbb_template_template_test_case array('VARIABLE' => 'variable.html'), array(), array(), - 'variable.htmlvariable.html', + "variable.html\nvariable.html\nvariable.html", ), array( 'include_loop_define.html', diff --git a/tests/template/templates/include_define_variable.html b/tests/template/templates/include_define_variable.html index fceeebf5df..6052657c97 100644 --- a/tests/template/templates/include_define_variable.html +++ b/tests/template/templates/include_define_variable.html @@ -1,4 +1,8 @@ + + + + -- cgit v1.2.1 From aa710df2db2512f6065f91dcf8b5fc7d100edf41 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Fri, 13 Sep 2013 09:52:02 -0500 Subject: [ticket/11832] Create phpbb_symfony_request to handle initiating symfony_request Now symfony_request is also a service (removed the function phpbb_create_symfony_request). Inject symfony request into filesystem Cleanup for the tests PHPBB3-11832 --- tests/filesystem/clean_path_test.php | 7 ++++- tests/filesystem/web_root_path_test.php | 55 +++++++++++++++++++++------------ 2 files changed, 42 insertions(+), 20 deletions(-) (limited to 'tests') diff --git a/tests/filesystem/clean_path_test.php b/tests/filesystem/clean_path_test.php index 88352838bb..b79668fc33 100644 --- a/tests/filesystem/clean_path_test.php +++ b/tests/filesystem/clean_path_test.php @@ -14,7 +14,12 @@ class phpbb_filesystem_clean_path_test extends phpbb_test_case public function setUp() { parent::setUp(); - $this->filesystem = new phpbb_filesystem(__DIR__ . './../../phpBB/'); + $this->filesystem = new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + dirname(__FILE__) . './../../phpBB/' + ); } public function clean_path_data() diff --git a/tests/filesystem/web_root_path_test.php b/tests/filesystem/web_root_path_test.php index 8e0ba278e0..b681c26de9 100644 --- a/tests/filesystem/web_root_path_test.php +++ b/tests/filesystem/web_root_path_test.php @@ -18,7 +18,8 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case $this->set_phpbb_root_path(); - $this->filesystem = new phpbb_filesystem($this->phpbb_root_path); + $symfony_request = new phpbb_symfony_request(new phpbb_mock_request()); + $this->filesystem = new phpbb_filesystem($symfony_request, $this->phpbb_root_path); } /** @@ -40,13 +41,14 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case $this->assertEquals($this->phpbb_root_path, $this->filesystem->get_web_root_path()); } - public function update_web_root_path_data() + public function basic_update_web_root_path_data() { $this->set_phpbb_root_path(); return array( array( $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . 'test.php', ), array( 'test.php', @@ -54,7 +56,24 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case ), array( $this->phpbb_root_path . $this->phpbb_root_path . 'test.php', + $this->phpbb_root_path . $this->phpbb_root_path . 'test.php', ), + ); + } + + /** + * @dataProvider basic_update_web_root_path_data + */ + public function test_basic_update_web_root_path($input, $expected) + { + $this->assertEquals($expected, $this->filesystem->update_web_root_path($input, $symfony_request)); + } + + public function update_web_root_path_data() + { + $this->set_phpbb_root_path(); + + return array( array( $this->phpbb_root_path . 'test.php', $this->phpbb_root_path . 'test.php', @@ -92,25 +111,23 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case /** * @dataProvider update_web_root_path_data */ - public function test_update_web_root_path($input, $expected = null, $getPathInfo = null, $getRequestUri = null, $getScriptName = null) + public function test_update_web_root_path($input, $expected, $getPathInfo, $getRequestUri = null, $getScriptName = null) { - $expected = ($expected === null) ? $input : $expected; + $symfony_request = $this->getMock("phpbb_symfony_request", array(), array( + new phpbb_mock_request(), + )); + $symfony_request->expects($this->any()) + ->method('getPathInfo') + ->will($this->returnValue($getPathInfo)); + $symfony_request->expects($this->any()) + ->method('getRequestUri') + ->will($this->returnValue($getRequestUri)); + $symfony_request->expects($this->any()) + ->method('getScriptName') + ->will($this->returnValue($getScriptName)); - $symfony_request = null; - if ($getPathInfo !== null) - { - $symfony_request = $this->getMock("Symfony\Component\HttpFoundation\Request"); - $symfony_request->expects($this->any()) - ->method('getPathInfo') - ->will($this->returnValue($getPathInfo)); - $symfony_request->expects($this->any()) - ->method('getRequestUri') - ->will($this->returnValue($getRequestUri)); - $symfony_request->expects($this->any()) - ->method('getScriptName') - ->will($this->returnValue($getScriptName)); - } + $filesystem = new phpbb_filesystem($symfony_request, $this->phpbb_root_path); - $this->assertEquals($expected, $this->filesystem->update_web_root_path($input, $symfony_request)); + $this->assertEquals($expected, $filesystem->update_web_root_path($input, $symfony_request)); } } -- cgit v1.2.1 From 21624e79fc512fd86177080010bb7d26c71ce3cb Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Fri, 13 Sep 2013 10:04:35 -0500 Subject: [ticket/11832] Fix constructions of phpbb_filesystem PHPBB3-11832 --- tests/dbal/migrator_test.php | 7 ++++++- tests/extension/manager_test.php | 7 ++++++- tests/extension/metadata_manager_test.php | 7 ++++++- tests/log/function_view_log_test.php | 4 +--- tests/mock/extension_manager.php | 7 ++++++- tests/test_framework/phpbb_functional_test_case.php | 7 ++++++- 6 files changed, 31 insertions(+), 8 deletions(-) (limited to 'tests') diff --git a/tests/dbal/migrator_test.php b/tests/dbal/migrator_test.php index 4be1fbe176..5f0818d568 100644 --- a/tests/dbal/migrator_test.php +++ b/tests/dbal/migrator_test.php @@ -59,7 +59,12 @@ class phpbb_dbal_migrator_test extends phpbb_database_test_case $container, $this->db, $this->config, - new phpbb_filesystem(dirname(__FILE__) . '/../../phpBB/'), + new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + dirname(__FILE__) . '/../../phpBB/' + ), 'phpbb_ext', dirname(__FILE__) . '/../../phpBB/', 'php', diff --git a/tests/extension/manager_test.php b/tests/extension/manager_test.php index 2da6ba5df5..b9a920d092 100644 --- a/tests/extension/manager_test.php +++ b/tests/extension/manager_test.php @@ -114,7 +114,12 @@ class phpbb_extension_manager_test extends phpbb_database_test_case $container, $db, $config, - new phpbb_filesystem($phpbb_root_path), + new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $phpbb_root_path + ), 'phpbb_ext', dirname(__FILE__) . '/', $php_ext, diff --git a/tests/extension/metadata_manager_test.php b/tests/extension/metadata_manager_test.php index 594568b805..6b27929ebf 100644 --- a/tests/extension/metadata_manager_test.php +++ b/tests/extension/metadata_manager_test.php @@ -65,7 +65,12 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case $container, $this->db, $this->config, - new phpbb_filesystem($this->phpbb_root_path), + new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $this->phpbb_root_path + ), 'phpbb_ext', $this->phpbb_root_path, $this->phpEx, diff --git a/tests/log/function_view_log_test.php b/tests/log/function_view_log_test.php index a634863fb6..6827aaa1b6 100644 --- a/tests/log/function_view_log_test.php +++ b/tests/log/function_view_log_test.php @@ -23,10 +23,8 @@ class phpbb_log_function_view_log_test extends phpbb_database_test_case public static function view_log_function_data() { - global $phpEx, $phpbb_dispatcher, $phpbb_container, $phpbb_root_path; + global $phpEx, $phpbb_dispatcher; $phpbb_dispatcher = new phpbb_mock_event_dispatcher(); - $phpbb_container = new phpbb_mock_container_builder(); - $phpbb_container->set('filesystem', new phpbb_filesystem($phpbb_root_path)); $expected_data_sets = array( 1 => array( diff --git a/tests/mock/extension_manager.php b/tests/mock/extension_manager.php index 28eec5930f..0c73adcf47 100644 --- a/tests/mock/extension_manager.php +++ b/tests/mock/extension_manager.php @@ -14,6 +14,11 @@ class phpbb_mock_extension_manager extends phpbb_extension_manager $this->phpbb_root_path = $phpbb_root_path; $this->php_ext = 'php'; $this->extensions = $extensions; - $this->filesystem = new phpbb_filesystem($phpbb_root_path); + $this->filesystem = new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $phpbb_root_path + ); } } diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index 579e225ed9..48c5649281 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -203,7 +203,12 @@ class phpbb_functional_test_case extends phpbb_test_case $container, $db, $config, - new phpbb_filesystem($phpbb_root_path), + new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $phpbb_root_path + ), self::$config['table_prefix'] . 'ext', dirname(__FILE__) . '/', $php_ext, -- cgit v1.2.1 From b4a374dc73eda55db1c67b87bd65a73f79411ef5 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Fri, 13 Sep 2013 10:58:03 -0500 Subject: [ticket/11832] Fix INCLUDE(JS/CSS) PHPBB3-11832 --- tests/controller/helper_url_test.php | 18 ++++++++++++++++-- tests/dbal/migrator_test.php | 3 ++- tests/extension/manager_test.php | 3 ++- tests/extension/metadata_manager_test.php | 12 +++++++++--- tests/filesystem/clean_path_test.php | 3 ++- tests/filesystem/web_root_path_test.php | 15 ++++++++++++--- tests/mock/extension_manager.php | 3 ++- tests/template/template_events_test.php | 9 ++++++++- tests/template/template_test_case.php | 10 +++++++++- tests/template/template_test_case_with_tree.php | 10 +++++++++- tests/test_framework/phpbb_functional_test_case.php | 3 ++- 11 files changed, 73 insertions(+), 16 deletions(-) (limited to 'tests') diff --git a/tests/controller/helper_url_test.php b/tests/controller/helper_url_test.php index da90947bb5..2dd7269caa 100644 --- a/tests/controller/helper_url_test.php +++ b/tests/controller/helper_url_test.php @@ -49,7 +49,14 @@ class phpbb_controller_helper_url_test extends phpbb_test_case $phpbb_dispatcher = new phpbb_mock_event_dispatcher; $this->user = $this->getMock('phpbb_user'); - $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); + $phpbb_filesystem = new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $phpbb_root_path, + $phpEx + ); + $this->template = new phpbb_template_twig($phpbb_filesystem, $config, $this->user, new phpbb_template_context()); // We don't use mod_rewrite in these tests $config = new phpbb_config(array('enable_mod_rewrite' => '0')); @@ -94,7 +101,14 @@ class phpbb_controller_helper_url_test extends phpbb_test_case $phpbb_dispatcher = new phpbb_mock_event_dispatcher; $this->user = $this->getMock('phpbb_user'); - $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); + $phpbb_filesystem = new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $phpbb_root_path, + $phpEx + ); + $this->template = new phpbb_template_twig($phpbb_filesystem, $config, $this->user, new phpbb_template_context()); $config = new phpbb_config(array('enable_mod_rewrite' => '1')); $helper = new phpbb_controller_helper($this->template, $this->user, $config, '', 'php'); diff --git a/tests/dbal/migrator_test.php b/tests/dbal/migrator_test.php index 5f0818d568..d722439b3f 100644 --- a/tests/dbal/migrator_test.php +++ b/tests/dbal/migrator_test.php @@ -63,7 +63,8 @@ class phpbb_dbal_migrator_test extends phpbb_database_test_case new phpbb_symfony_request( new phpbb_mock_request() ), - dirname(__FILE__) . '/../../phpBB/' + dirname(__FILE__) . '/../../phpBB/', + 'php' ), 'phpbb_ext', dirname(__FILE__) . '/../../phpBB/', diff --git a/tests/extension/manager_test.php b/tests/extension/manager_test.php index b9a920d092..07ca9fb417 100644 --- a/tests/extension/manager_test.php +++ b/tests/extension/manager_test.php @@ -118,7 +118,8 @@ class phpbb_extension_manager_test extends phpbb_database_test_case new phpbb_symfony_request( new phpbb_mock_request() ), - $phpbb_root_path + $phpbb_root_path, + $php_ext ), 'phpbb_ext', dirname(__FILE__) . '/', diff --git a/tests/extension/metadata_manager_test.php b/tests/extension/metadata_manager_test.php index 6b27929ebf..3ee10c3a74 100644 --- a/tests/extension/metadata_manager_test.php +++ b/tests/extension/metadata_manager_test.php @@ -41,8 +41,13 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case $this->table_prefix = 'phpbb_'; $this->template = new phpbb_template_twig( - $this->phpbb_root_path, - $this->phpEx, + new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $this->phpbb_root_path, + $this->phpEx + ), $this->config, $this->user, new phpbb_template_context() @@ -69,7 +74,8 @@ class phpbb_extension_metadata_manager_test extends phpbb_database_test_case new phpbb_symfony_request( new phpbb_mock_request() ), - $this->phpbb_root_path + $this->phpbb_root_path, + $this->phpEx ), 'phpbb_ext', $this->phpbb_root_path, diff --git a/tests/filesystem/clean_path_test.php b/tests/filesystem/clean_path_test.php index b79668fc33..38ccf1b603 100644 --- a/tests/filesystem/clean_path_test.php +++ b/tests/filesystem/clean_path_test.php @@ -18,7 +18,8 @@ class phpbb_filesystem_clean_path_test extends phpbb_test_case new phpbb_symfony_request( new phpbb_mock_request() ), - dirname(__FILE__) . './../../phpBB/' + dirname(__FILE__) . './../../phpBB/', + 'php' ); } diff --git a/tests/filesystem/web_root_path_test.php b/tests/filesystem/web_root_path_test.php index b681c26de9..ae59d4f709 100644 --- a/tests/filesystem/web_root_path_test.php +++ b/tests/filesystem/web_root_path_test.php @@ -18,8 +18,13 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case $this->set_phpbb_root_path(); - $symfony_request = new phpbb_symfony_request(new phpbb_mock_request()); - $this->filesystem = new phpbb_filesystem($symfony_request, $this->phpbb_root_path); + $this->filesystem = new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $this->phpbb_root_path, + 'php' + ); } /** @@ -126,7 +131,11 @@ class phpbb_filesystem_web_root_path_test extends phpbb_test_case ->method('getScriptName') ->will($this->returnValue($getScriptName)); - $filesystem = new phpbb_filesystem($symfony_request, $this->phpbb_root_path); + $filesystem = new phpbb_filesystem( + $symfony_request, + $this->phpbb_root_path, + 'php' + ); $this->assertEquals($expected, $filesystem->update_web_root_path($input, $symfony_request)); } diff --git a/tests/mock/extension_manager.php b/tests/mock/extension_manager.php index 0c73adcf47..0d1b6940ca 100644 --- a/tests/mock/extension_manager.php +++ b/tests/mock/extension_manager.php @@ -18,7 +18,8 @@ class phpbb_mock_extension_manager extends phpbb_extension_manager new phpbb_symfony_request( new phpbb_mock_request() ), - $phpbb_root_path + $this->phpbb_root_path, + $this->php_ext ); } } diff --git a/tests/template/template_events_test.php b/tests/template/template_events_test.php index 4280a7e7ff..58691a36da 100644 --- a/tests/template/template_events_test.php +++ b/tests/template/template_events_test.php @@ -116,7 +116,14 @@ Zeta test event in all', $this->extension_manager = new phpbb_mock_filesystem_extension_manager( dirname(__FILE__) . "/datasets/$dataset/" ); - $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context, $this->extension_manager); + $phpbb_filesystem = new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $phpbb_root_path, + $phpEx + ); + $this->template = new phpbb_template_twig($phpbb_filesystem, $config, $user, new phpbb_template_context, $this->extension_manager); $this->template->set_custom_style(((!empty($style_names)) ? $style_names : 'silver'), array($this->template_path)); } } diff --git a/tests/template/template_test_case.php b/tests/template/template_test_case.php index 91895502ad..8151e15b24 100644 --- a/tests/template/template_test_case.php +++ b/tests/template/template_test_case.php @@ -63,8 +63,16 @@ class phpbb_template_template_test_case extends phpbb_test_case $config = new phpbb_config(array_merge($defaults, $new_config)); $this->user = new phpbb_user; + $phpbb_filesystem = new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $phpbb_root_path, + $phpEx + ); + $this->template_path = $this->test_path . '/templates'; - $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $this->user, new phpbb_template_context()); + $this->template = new phpbb_template_twig($phpbb_filesystem, $config, $this->user, new phpbb_template_context()); $this->template->set_custom_style('tests', $this->template_path); } diff --git a/tests/template/template_test_case_with_tree.php b/tests/template/template_test_case_with_tree.php index 477192c28a..c4f3b4a257 100644 --- a/tests/template/template_test_case_with_tree.php +++ b/tests/template/template_test_case_with_tree.php @@ -18,9 +18,17 @@ class phpbb_template_template_test_case_with_tree extends phpbb_template_templat $defaults = $this->config_defaults(); $config = new phpbb_config(array_merge($defaults, $new_config)); + $phpbb_filesystem = new phpbb_filesystem( + new phpbb_symfony_request( + new phpbb_mock_request() + ), + $phpbb_root_path, + $phpEx + ); + $this->template_path = $this->test_path . '/templates'; $this->parent_template_path = $this->test_path . '/parent_templates'; - $this->template = new phpbb_template_twig($phpbb_root_path, $phpEx, $config, $user, new phpbb_template_context()); + $this->template = new phpbb_template_twig($phpbb_filesystem, $config, $user, new phpbb_template_context()); $this->template->set_custom_style('tests', array($this->template_path, $this->parent_template_path)); } } diff --git a/tests/test_framework/phpbb_functional_test_case.php b/tests/test_framework/phpbb_functional_test_case.php index 48c5649281..00f166d4fe 100644 --- a/tests/test_framework/phpbb_functional_test_case.php +++ b/tests/test_framework/phpbb_functional_test_case.php @@ -207,7 +207,8 @@ class phpbb_functional_test_case extends phpbb_test_case new phpbb_symfony_request( new phpbb_mock_request() ), - $phpbb_root_path + $phpbb_root_path, + $php_ext ), self::$config['table_prefix'] . 'ext', dirname(__FILE__) . '/', -- cgit v1.2.1 From cd141883a59ca474c844f9e206333dbd79699695 Mon Sep 17 00:00:00 2001 From: Nathan Guse Date: Sun, 15 Sep 2013 18:55:18 -0500 Subject: [ticket/11832] Correct paths in tests PHPBB3-11832 --- tests/template/template_includecss_test.php | 4 ++-- tests/template/template_includejs_test.php | 28 +++++++++++++------------ tests/template/template_test_case_with_tree.php | 4 ++-- 3 files changed, 19 insertions(+), 17 deletions(-) (limited to 'tests') diff --git a/tests/template/template_includecss_test.php b/tests/template/template_includecss_test.php index f8999ad1a9..c00aa8e9bb 100644 --- a/tests/template/template_includecss_test.php +++ b/tests/template/template_includecss_test.php @@ -18,8 +18,8 @@ class phpbb_template_template_includecss_test extends phpbb_template_template_te // Prepare correct result $scripts = array( - '', - '', + '', + '', ); // Run test diff --git a/tests/template/template_includejs_test.php b/tests/template/template_includejs_test.php index b67fa123a1..2faeb5fcaa 100644 --- a/tests/template/template_includejs_test.php +++ b/tests/template/template_includejs_test.php @@ -13,6 +13,8 @@ class phpbb_template_template_includejs_test extends phpbb_template_template_tes { public function template_data() { + $this->setup_engine(); + return array( /* array( @@ -22,51 +24,51 @@ class phpbb_template_template_includejs_test extends phpbb_template_template_tes */ array( array('TEST' => 1), - '', + '', ), array( array('TEST' => 2), - '', + '', ), array( array('TEST' => 3), - '', + '', ), array( array('TEST' => 4), - '', + '', ), array( array('TEST' => 6), - '', + '', ), array( array('TEST' => 7), - '', + '', ), array( array('TEST' => 8), - '', + '', ), array( array('TEST' => 9), - '', + '', ), array( array('TEST' => 10), - '', + '', ), array( array('TEST' => 11), - '', + '', ), array( array('TEST' => 12), - '', + '', ), array( array('TEST' => 14), - '', + '', ), array( array('TEST' => 15), @@ -82,7 +84,7 @@ class phpbb_template_template_includejs_test extends phpbb_template_template_tes ), array( array('TEST' => 18), - '', + '', ), ); } diff --git a/tests/template/template_test_case_with_tree.php b/tests/template/template_test_case_with_tree.php index c4f3b4a257..c7bd03a3c7 100644 --- a/tests/template/template_test_case_with_tree.php +++ b/tests/template/template_test_case_with_tree.php @@ -18,7 +18,7 @@ class phpbb_template_template_test_case_with_tree extends phpbb_template_templat $defaults = $this->config_defaults(); $config = new phpbb_config(array_merge($defaults, $new_config)); - $phpbb_filesystem = new phpbb_filesystem( + $this->phpbb_filesystem = new phpbb_filesystem( new phpbb_symfony_request( new phpbb_mock_request() ), @@ -28,7 +28,7 @@ class phpbb_template_template_test_case_with_tree extends phpbb_template_templat $this->template_path = $this->test_path . '/templates'; $this->parent_template_path = $this->test_path . '/parent_templates'; - $this->template = new phpbb_template_twig($phpbb_filesystem, $config, $user, new phpbb_template_context()); + $this->template = new phpbb_template_twig($this->phpbb_filesystem, $config, $user, new phpbb_template_context()); $this->template->set_custom_style('tests', array($this->template_path, $this->parent_template_path)); } } -- cgit v1.2.1