diff options
author | Joas Schilling <nickvergessen@gmx.de> | 2014-03-07 12:42:06 +0100 |
---|---|---|
committer | Joas Schilling <nickvergessen@gmx.de> | 2014-03-07 14:07:45 +0100 |
commit | ecf1e94726a8a1e0f8d30aba3935e1899c2c6adc (patch) | |
tree | 9741193dbe144ed3635e18095fc110272acc3d42 | |
parent | [ticket/12090] Pass route name to url() to allow admins to change the routes (diff) | |
download | phpbb-ecf1e94726a8a1e0f8d30aba3935e1899c2c6adc.tar.gz phpbb-ecf1e94726a8a1e0f8d30aba3935e1899c2c6adc.tar.bz2 phpbb-ecf1e94726a8a1e0f8d30aba3935e1899c2c6adc.zip |
[ticket/12090] Change redirect tests to use route()
PHPBB3-12090
-rw-r--r-- | tests/controller/controller_test.php | 12 | ||||
-rw-r--r-- | tests/functional/fixtures/ext/foo/bar/config/routing.yml | 12 | ||||
-rw-r--r-- | tests/functional/fixtures/ext/foo/bar/controller/controller.php | 6 | ||||
-rw-r--r-- | tests/security/redirect_test.php | 33 |
4 files changed, 23 insertions, 40 deletions
diff --git a/tests/controller/controller_test.php b/tests/controller/controller_test.php index b65e677dbe..8709f449db 100644 --- a/tests/controller/controller_test.php +++ b/tests/controller/controller_test.php @@ -21,10 +21,10 @@ class phpbb_controller_controller_test extends phpbb_test_case $this->extension_manager = new phpbb_mock_extension_manager( dirname(__FILE__) . '/', array( - 'foo' => array( - 'ext_name' => 'foo', + 'vendor2/foo' => array( + 'ext_name' => 'vendor2/foo', 'ext_active' => '1', - 'ext_path' => 'ext/foo/', + 'ext_path' => 'ext/vendor2/foo/', ), )); } @@ -52,7 +52,7 @@ class phpbb_controller_controller_test extends phpbb_test_case $container = new ContainerBuilder(); // YamlFileLoader only uses one path at a time, so we need to loop // through all of the ones we are using. - foreach (array(__DIR__.'/config', __DIR__.'/ext/foo/config') as $path) + foreach (array(__DIR__.'/config', __DIR__ . '/ext/vendor2/foo/config') as $path) { $loader = new YamlFileLoader($container, new FileLocator($path)); $loader->load('services.yml'); @@ -60,9 +60,9 @@ class phpbb_controller_controller_test extends phpbb_test_case // Autoloading classes within the tests folder does not work // so I'll include them manually. - if (!class_exists('foo\\controller')) + if (!class_exists('vendor2\\foo\\controller')) { - include(__DIR__ . '/ext/foo/controller.php'); + include(__DIR__ . '/ext/vendor2/foo/controller.php'); } if (!class_exists('phpbb\\controller\\foo')) { diff --git a/tests/functional/fixtures/ext/foo/bar/config/routing.yml b/tests/functional/fixtures/ext/foo/bar/config/routing.yml index 9b1ce3cfd7..d4d256c293 100644 --- a/tests/functional/fixtures/ext/foo/bar/config/routing.yml +++ b/tests/functional/fixtures/ext/foo/bar/config/routing.yml @@ -17,3 +17,15 @@ foo_exception_controller: foo_redirect_controller: pattern: /foo/redirect defaults: { _controller: foo_bar.controller:redirect } + +foo_index_controller: + pattern: /index + defaults: { _controller: foo_bar.controller:redirect } + +foo_tests_index_controller: + pattern: /tests/index + defaults: { _controller: foo_bar.controller:redirect } + +foo_tests_dotdot_index_controller: + pattern: /tests/../index + defaults: { _controller: foo_bar.controller:redirect } diff --git a/tests/functional/fixtures/ext/foo/bar/controller/controller.php b/tests/functional/fixtures/ext/foo/bar/controller/controller.php index 558b202948..7a52958ab6 100644 --- a/tests/functional/fixtures/ext/foo/bar/controller/controller.php +++ b/tests/functional/fixtures/ext/foo/bar/controller/controller.php @@ -63,15 +63,15 @@ class controller 'tests/index.php', ), array( - $this->helper->url('index'), + $this->helper->url('foo_index_controller'), $rewrite_prefix . 'index', ), array( - $this->helper->url('tests/index'), + $this->helper->url('foo_tests_index_controller'), $rewrite_prefix . 'tests/index', ), array( - $this->helper->url('tests/../index'), + $this->helper->url('foo_tests_dotdot_index_controller'), $rewrite_prefix . 'index', ), /* diff --git a/tests/security/redirect_test.php b/tests/security/redirect_test.php index 77dc955c26..e5ff3b1541 100644 --- a/tests/security/redirect_test.php +++ b/tests/security/redirect_test.php @@ -15,11 +15,8 @@ class phpbb_security_redirect_test extends phpbb_security_test_base { protected $path_helper; - protected $controller_helper; - public function provider() { - $this->controller_helper = $this->get_controller_helper(); // array(Input -> redirect(), expected triggered error (else false), expected returned result url (else false)) return array( array('data://x', false, false, 'http://localhost/phpBB'), @@ -38,8 +35,8 @@ class phpbb_security_redirect_test extends phpbb_security_test_base array('./../foo/bar', false, false, 'http://localhost/foo/bar'), array('./../foo/bar', true, false, 'http://localhost/foo/bar'), array('app.php/', false, false, 'http://localhost/phpBB/app.php/'), - array($this->controller_helper->url('a'), false, false, 'http://localhost/phpBB/app.php/a'), - array($this->controller_helper->url(''), false, false, 'http://localhost/phpBB/app.php/'), + array('app.php/a', false, false, 'http://localhost/phpBB/app.php/a'), + array('app.php/a/b', false, false, 'http://localhost/phpBB/app.php/a/b'), array('./app.php/', false, false, 'http://localhost/phpBB/app.php/'), array('foobar', false, false, 'http://localhost/phpBB/foobar'), array('./foobar', false, false, 'http://localhost/phpBB/foobar'), @@ -69,31 +66,6 @@ class phpbb_security_redirect_test extends phpbb_security_test_base return $this->path_helper; } - protected function get_controller_helper() - { - if (!($this->controller_helper instanceof \phpbb\controller\helper)) - { - global $phpbb_dispatcher; - - $phpbb_dispatcher = new phpbb_mock_event_dispatcher; - $this->user = $this->getMock('\phpbb\user'); - $phpbb_path_helper = new \phpbb\path_helper( - new \phpbb\symfony_request( - new phpbb_mock_request() - ), - new \phpbb\filesystem(), - $phpbb_root_path, - $phpEx - ); - $this->template = new phpbb\template\twig\twig($phpbb_path_helper, $config, $this->user, new \phpbb\template\context()); - - // We don't use mod_rewrite in these tests - $config = new \phpbb\config\config(array('enable_mod_rewrite' => '0')); - $this->controller_helper = new \phpbb\controller\helper($this->template, $this->user, $config, '', 'php'); - } - return $this->controller_helper; - } - protected function setUp() { parent::setUp(); @@ -103,7 +75,6 @@ class phpbb_security_redirect_test extends phpbb_security_test_base ); $this->path_helper = $this->get_path_helper(); - $this->controller_helper = $this->get_controller_helper(); } /** |