mirror of
https://github.com/kamilwylegala/cakephp2-php8.git
synced 2024-11-15 03:18:26 +00:00
Moving default routes into a separate file.
Removing Router::defaults() as its not needed anymore. Removing default routes from inside router. Removing properties related to default routes. Removing dead tests and updating tests.
This commit is contained in:
parent
358d591e95
commit
cfb3e8a15b
4 changed files with 113 additions and 206 deletions
|
@ -30,3 +30,8 @@
|
|||
* ...and connect the rest of 'Pages' controller's urls.
|
||||
*/
|
||||
Router::connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));
|
||||
|
||||
/**
|
||||
* Load the CakePHP default routes.
|
||||
*/
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
|
|
83
lib/Cake/Config/routes.php
Normal file
83
lib/Cake/Config/routes.php
Normal file
|
@ -0,0 +1,83 @@
|
|||
<?php
|
||||
/**
|
||||
* Default routes that CakePHP provides as catch all routes.
|
||||
*
|
||||
* PHP 5
|
||||
*
|
||||
* CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
|
||||
* Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
|
||||
*
|
||||
* Licensed under The MIT License
|
||||
* Redistributions of files must retain the above copyright notice.
|
||||
*
|
||||
* @copyright Copyright 2005-2011, Cake Software Foundation, Inc. (http://cakefoundation.org)
|
||||
* @link http://cakephp.org CakePHP(tm) Project
|
||||
* @package cake.config
|
||||
* @since CakePHP(tm) v 2.0
|
||||
* @license MIT License (http://www.opensource.org/licenses/mit-license.php)
|
||||
*/
|
||||
|
||||
/**
|
||||
* Connects the default, built-in routes, including prefix and plugin routes. The following routes are created
|
||||
* in the order below:
|
||||
*
|
||||
* For each of the Routing.prefixes the following routes are created. Routes containing `:plugin` are only
|
||||
* created when your application has one or more plugins.
|
||||
*
|
||||
* - `/:prefix/:plugin` a plugin shortcut route.
|
||||
* - `/:prefix/:plugin/:action/*` a plugin shortcut route.
|
||||
* - `/:prefix/:plugin/:controller`
|
||||
* - `/:prefix/:plugin/:controller/:action/*`
|
||||
* - `/:prefix/:controller`
|
||||
* - `/:prefix/:controller/:action/*`
|
||||
*
|
||||
* If plugins are found in your application the following routes are created:
|
||||
*
|
||||
* - `/:plugin` a plugin shortcut route.
|
||||
* - `/:plugin/:action/*` a plugin shortcut route.
|
||||
* - `/:plugin/:controller`
|
||||
* - `/:plugin/:controller/:action/*`
|
||||
*
|
||||
* And lastly the following catch-all routes are connected.
|
||||
*
|
||||
* - `/:controller'
|
||||
* - `/:controller/:action/*'
|
||||
*
|
||||
* You can disable the connection of default routes by deleting the require inside APP/Config/routes.php.
|
||||
*/
|
||||
$prefixes = Router::prefixes();
|
||||
|
||||
if ($plugins = CakePlugin::loaded()) {
|
||||
App::uses('PluginShortRoute', 'Routing/Route');
|
||||
foreach ($plugins as $key => $value) {
|
||||
$plugins[$key] = Inflector::underscore($value);
|
||||
}
|
||||
$pluginPattern = implode('|', $plugins);
|
||||
$match = array('plugin' => $pluginPattern);
|
||||
$shortParams = array('routeClass' => 'PluginShortRoute', 'plugin' => $pluginPattern);
|
||||
|
||||
foreach ($prefixes as $prefix) {
|
||||
$params = array('prefix' => $prefix, $prefix => true);
|
||||
$indexParams = $params + array('action' => 'index');
|
||||
Router::connect("/{$prefix}/:plugin", $indexParams, $shortParams);
|
||||
Router::connect("/{$prefix}/:plugin/:controller", $indexParams, $match);
|
||||
Router::connect("/{$prefix}/:plugin/:controller/:action/*", $params, $match);
|
||||
}
|
||||
Router::connect('/:plugin', array('action' => 'index'), $shortParams);
|
||||
Router::connect('/:plugin/:controller', array('action' => 'index'), $match);
|
||||
Router::connect('/:plugin/:controller/:action/*', array(), $match);
|
||||
}
|
||||
|
||||
foreach ($prefixes as $prefix) {
|
||||
$params = array('prefix' => $prefix, $prefix => true);
|
||||
$indexParams = $params + array('action' => 'index');
|
||||
Router::connect("/{$prefix}/:controller", $indexParams);
|
||||
Router::connect("/{$prefix}/:controller/:action/*", $params);
|
||||
}
|
||||
Router::connect('/:controller', array('action' => 'index'));
|
||||
Router::connect('/:controller/:action/*');
|
||||
|
||||
$namedConfig = Router::namedConfig();
|
||||
if ($namedConfig['rules'] === false) {
|
||||
Router::connectNamed(true);
|
||||
}
|
|
@ -145,21 +145,6 @@ class Router {
|
|||
*/
|
||||
protected static $_requests = array();
|
||||
|
||||
/**
|
||||
* Keeps Router state to determine if default routes have already been connected
|
||||
*
|
||||
* @var boolean
|
||||
* @access private
|
||||
*/
|
||||
protected static $_defaultsMapped = false;
|
||||
|
||||
/**
|
||||
* Keeps track of whether the connection of default routes is enabled or disabled.
|
||||
*
|
||||
* @var boolean
|
||||
*/
|
||||
protected static $_connectDefaults = true;
|
||||
|
||||
/**
|
||||
* Initial state is popualated the first time reload() is called which is at the bottom
|
||||
* of this file. This is a cheat as get_class_vars() returns the value of static vars even if they
|
||||
|
@ -413,19 +398,6 @@ class Router {
|
|||
return self::$_namedConfig;
|
||||
}
|
||||
|
||||
/**
|
||||
* Tell router to connect or not connect the default routes.
|
||||
*
|
||||
* If default routes are disabled all automatic route generation will be disabled
|
||||
* and you will need to manually configure all the routes you want.
|
||||
*
|
||||
* @param boolean $connect Set to true or false depending on whether you want or don't want default routes.
|
||||
* @return void
|
||||
*/
|
||||
public static function defaults($connect = true) {
|
||||
self::$_connectDefaults = $connect;
|
||||
}
|
||||
|
||||
/**
|
||||
* Creates REST resource routes for the given controller(s)
|
||||
*
|
||||
|
@ -479,15 +451,8 @@ class Router {
|
|||
* @return array Parsed elements from URL
|
||||
*/
|
||||
public static function parse($url) {
|
||||
if (!self::$_defaultsMapped && self::$_connectDefaults) {
|
||||
self::__connectDefaultRoutes();
|
||||
}
|
||||
$out = array(
|
||||
'pass' => array(),
|
||||
'named' => array()
|
||||
);
|
||||
|
||||
$ext = null;
|
||||
$out = array();
|
||||
|
||||
if ($url && strpos($url, '/') !== 0) {
|
||||
$url = '/' . $url;
|
||||
|
@ -547,74 +512,6 @@ class Router {
|
|||
return compact('ext', 'url');
|
||||
}
|
||||
|
||||
/**
|
||||
* Connects the default, built-in routes, including prefix and plugin routes. The following routes are created
|
||||
* in the order below:
|
||||
*
|
||||
* For each of the Routing.prefixes the following routes are created. Routes containing `:plugin` are only
|
||||
* created when your application has one or more plugins.
|
||||
*
|
||||
* - `/:prefix/:plugin` a plugin shortcut route.
|
||||
* - `/:prefix/:plugin/:action/*` a plugin shortcut route.
|
||||
* - `/:prefix/:plugin/:controller`
|
||||
* - `/:prefix/:plugin/:controller/:action/*`
|
||||
* - `/:prefix/:controller`
|
||||
* - `/:prefix/:controller/:action/*`
|
||||
*
|
||||
* If plugins are found in your application the following routes are created:
|
||||
*
|
||||
* - `/:plugin` a plugin shortcut route.
|
||||
* - `/:plugin/:action/*` a plugin shortcut route.
|
||||
* - `/:plugin/:controller`
|
||||
* - `/:plugin/:controller/:action/*`
|
||||
*
|
||||
* And lastly the following catch-all routes are connected.
|
||||
*
|
||||
* - `/:controller'
|
||||
* - `/:controller/:action/*'
|
||||
*
|
||||
* You can disable the connection of default routes with Router::defaults().
|
||||
*
|
||||
* @return void
|
||||
* @access private
|
||||
*/
|
||||
private static function __connectDefaultRoutes() {
|
||||
if ($plugins = CakePlugin::loaded()) {
|
||||
App::uses('PluginShortRoute', 'Routing/Route');
|
||||
foreach ($plugins as $key => $value) {
|
||||
$plugins[$key] = Inflector::underscore($value);
|
||||
}
|
||||
$pluginPattern = implode('|', $plugins);
|
||||
$match = array('plugin' => $pluginPattern);
|
||||
$shortParams = array('routeClass' => 'PluginShortRoute', 'plugin' => $pluginPattern);
|
||||
|
||||
foreach (self::$_prefixes as $prefix) {
|
||||
$params = array('prefix' => $prefix, $prefix => true);
|
||||
$indexParams = $params + array('action' => 'index');
|
||||
self::connect("/{$prefix}/:plugin", $indexParams, $shortParams);
|
||||
self::connect("/{$prefix}/:plugin/:controller", $indexParams, $match);
|
||||
self::connect("/{$prefix}/:plugin/:controller/:action/*", $params, $match);
|
||||
}
|
||||
self::connect('/:plugin', array('action' => 'index'), $shortParams);
|
||||
self::connect('/:plugin/:controller', array('action' => 'index'), $match);
|
||||
self::connect('/:plugin/:controller/:action/*', array(), $match);
|
||||
}
|
||||
|
||||
foreach (self::$_prefixes as $prefix) {
|
||||
$params = array('prefix' => $prefix, $prefix => true);
|
||||
$indexParams = $params + array('action' => 'index');
|
||||
self::connect("/{$prefix}/:controller", $indexParams);
|
||||
self::connect("/{$prefix}/:controller/:action/*", $params);
|
||||
}
|
||||
self::connect('/:controller', array('action' => 'index'));
|
||||
self::connect('/:controller/:action/*');
|
||||
|
||||
if (self::$_namedConfig['rules'] === false) {
|
||||
self::connectNamed(true);
|
||||
}
|
||||
self::$_defaultsMapped = true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Takes parameter and path information back from the Dispatcher, sets these
|
||||
* parameters as the current request parameters that are merged with url arrays
|
||||
|
|
|
@ -115,7 +115,7 @@ class RouterTest extends CakeTestCase {
|
|||
|
||||
$_SERVER['REQUEST_METHOD'] = 'GET';
|
||||
$result = Router::parse('/posts/add');
|
||||
$this->assertEqual($result, array('pass' => array(), 'named' => array(), 'plugin' => '', 'controller' => 'posts', 'action' => 'add'));
|
||||
$this->assertEquals(array(), $result);
|
||||
|
||||
Router::reload();
|
||||
$resources = Router::mapResources('Posts', array('id' => '[a-z0-9_]+'));
|
||||
|
@ -446,58 +446,6 @@ class RouterTest extends CakeTestCase {
|
|||
)));
|
||||
$expected = '/tests/index/namedParam[keyed]:is an array/namedParam[0]:test';
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
//@todo Delete from here down, tests are in CakeRoute now.
|
||||
$result = Router::parse('/tests/action/var[]:val1/var[]:val2');
|
||||
$expected = array(
|
||||
'controller' => 'tests',
|
||||
'action' => 'action',
|
||||
'named' => array(
|
||||
'var' => array(
|
||||
'val1',
|
||||
'val2'
|
||||
)
|
||||
),
|
||||
'pass' => array(),
|
||||
'plugin' => null
|
||||
);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
$result = Router::parse('/tests/action/theanswer[is]:42/var[]:val2/var[]:val3');
|
||||
$expected = array(
|
||||
'controller' => 'tests',
|
||||
'action' => 'action',
|
||||
'named' => array(
|
||||
'theanswer' => array(
|
||||
'is' => 42
|
||||
),
|
||||
'var' => array(
|
||||
'val2',
|
||||
'val3'
|
||||
)
|
||||
),
|
||||
'pass' => array(),
|
||||
'plugin' => null
|
||||
);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
$result = Router::parse('/tests/action/theanswer[is][not]:42/theanswer[]:5/theanswer[is]:6');
|
||||
$expected = array(
|
||||
'controller' => 'tests',
|
||||
'action' => 'action',
|
||||
'named' => array(
|
||||
'theanswer' => array(
|
||||
5,
|
||||
'is' => array(
|
||||
6,
|
||||
'not' => 42
|
||||
)
|
||||
),
|
||||
),
|
||||
'pass' => array(),
|
||||
'plugin' => null
|
||||
);
|
||||
$this->assertEqual($expected, $result);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -605,10 +553,6 @@ class RouterTest extends CakeTestCase {
|
|||
'controller' => 'source|wiki|commits|tickets|comments|view',
|
||||
'action' => 'branches|history|branch|logs|view|start|add|edit|modify'
|
||||
));
|
||||
Router::defaults(false);
|
||||
$result = Router::parse('/foo/bar');
|
||||
$expected = array('pass' => array(), 'named' => array());
|
||||
$this->assertEqual($expected, $result);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -956,6 +900,7 @@ class RouterTest extends CakeTestCase {
|
|||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
$result = Router::parse('/pages/display/home');
|
||||
$expected = array('plugin' => null, 'pass' => array('home'), 'controller' => 'pages', 'action' => 'display', 'named' => array());
|
||||
$this->assertEqual($expected, $result);
|
||||
|
@ -1192,6 +1137,7 @@ class RouterTest extends CakeTestCase {
|
|||
CakePlugin::loadAll();
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
$request = new CakeRequest();
|
||||
Router::setRequestInfo(
|
||||
$request->addParams(array(
|
||||
|
@ -1210,7 +1156,7 @@ class RouterTest extends CakeTestCase {
|
|||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
Router::parse('/');
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
$request = new CakeRequest();
|
||||
Router::setRequestInfo(
|
||||
$request->addParams(array(
|
||||
|
@ -1261,6 +1207,7 @@ class RouterTest extends CakeTestCase {
|
|||
*/
|
||||
public function testExtensionParsing() {
|
||||
Router::parseExtensions();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
|
||||
$result = Router::parse('/posts.rss');
|
||||
$expected = array('plugin' => null, 'controller' => 'posts', 'action' => 'index', 'url' => array('ext' => 'rss'), 'pass'=> array(), 'named' => array());
|
||||
|
@ -1278,6 +1225,8 @@ class RouterTest extends CakeTestCase {
|
|||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
|
||||
Router::parseExtensions('rss', 'xml');
|
||||
|
||||
$result = Router::parse('/posts.xml');
|
||||
|
@ -1434,11 +1383,13 @@ class RouterTest extends CakeTestCase {
|
|||
*/
|
||||
public function testNamedArgsUrlParsing() {
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
$result = Router::parse('/controller/action/param1:value1:1/param2:value2:3/param:value');
|
||||
$expected = array('pass' => array(), 'named' => array('param1' => 'value1:1', 'param2' => 'value2:3', 'param' => 'value'), 'controller' => 'controller', 'action' => 'action', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
$result = Router::connectNamed(false);
|
||||
$this->assertEqual(array_keys($result['rules']), array());
|
||||
$this->assertFalse($result['greedyNamed']);
|
||||
|
@ -1447,52 +1398,43 @@ class RouterTest extends CakeTestCase {
|
|||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
$result = Router::connectNamed(true);
|
||||
$named = Router::namedConfig();
|
||||
$this->assertEqual(array_keys($result['rules']), $named['default']);
|
||||
$this->assertTrue($result['greedyNamed']);
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
Router::connectNamed(array('param1' => 'not-matching'));
|
||||
$result = Router::parse('/controller/action/param1:value1:1/param2:value2:3/param:value');
|
||||
$expected = array('pass' => array('param1:value1:1'), 'named' => array('param2' => 'value2:3', 'param' => 'value'), 'controller' => 'controller', 'action' => 'action', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
//@todo delete this test.
|
||||
Router::reload();
|
||||
Router::connect('/foo/:action/*', array('controller' => 'bar'), array('named' => array('param1' => array('action' => 'index')), 'greedyNamed' => true));
|
||||
$result = Router::parse('/foo/index/param1:value1:1/param2:value2:3/param:value');
|
||||
$expected = array('pass' => array(), 'named' => array('param1' => 'value1:1', 'param2' => 'value2:3', 'param' => 'value'), 'controller' => 'bar', 'action' => 'index', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
$result = Router::parse('/foo/view/param1:value1:1/param2:value2:3/param:value');
|
||||
$expected = array('pass' => array('param1:value1:1'), 'named' => array('param2' => 'value2:3', 'param' => 'value'), 'controller' => 'bar', 'action' => 'view', 'plugin' => null);
|
||||
$expected = array('pass' => array('param1:value1:1'), 'named' => array('param2' => 'value2:3', 'param' => 'value'), 'controller' => 'foo', 'action' => 'view', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
Router::connectNamed(array('param1' => '[\d]', 'param2' => '[a-z]', 'param3' => '[\d]'));
|
||||
$result = Router::parse('/controller/action/param1:1/param2:2/param3:3');
|
||||
$expected = array('pass' => array('param2:2'), 'named' => array('param1' => '1', 'param3' => '3'), 'controller' => 'controller', 'action' => 'action', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
Router::connectNamed(array('param1' => '[\d]', 'param2' => true, 'param3' => '[\d]'));
|
||||
$result = Router::parse('/controller/action/param1:1/param2:2/param3:3');
|
||||
$expected = array('pass' => array(), 'named' => array('param1' => '1', 'param2' => '2', 'param3' => '3'), 'controller' => 'controller', 'action' => 'action', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
Router::connectNamed(array('param1' => 'value[\d]+:[\d]+'), array('greedy' => false));
|
||||
$result = Router::parse('/controller/action/param1:value1:1/param2:value2:3/param3:value');
|
||||
$expected = array('pass' => array('param2:value2:3', 'param3:value'), 'named' => array('param1' => 'value1:1'), 'controller' => 'controller', 'action' => 'action', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
//@todo delete this test.
|
||||
Router::reload();
|
||||
Router::connect('/foo/*', array('controller' => 'bar', 'action' => 'fubar'), array('named' => array('param1' => 'value[\d]:[\d]')));
|
||||
Router::connectNamed(array(), array('greedy' => false));
|
||||
$result = Router::parse('/foo/param1:value1:1/param2:value2:3/param3:value');
|
||||
$expected = array('pass' => array('param2:value2:3', 'param3:value'), 'named' => array('param1' => 'value1:1'), 'controller' => 'bar', 'action' => 'fubar', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1761,13 +1703,7 @@ class RouterTest extends CakeTestCase {
|
|||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
|
||||
|
||||
$result = Router::parse('/pages/display/home/parameter:value');
|
||||
$expected = array('pass' => array('home'), 'named' => array('parameter' => 'value'), 'plugin' => null, 'controller' => 'pages', 'action' => 'display');
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
Router::connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));
|
||||
|
||||
$result = Router::parse('/');
|
||||
|
@ -1802,6 +1738,7 @@ class RouterTest extends CakeTestCase {
|
|||
*/
|
||||
public function testParsingWithTrailingPeriod() {
|
||||
Router::reload();
|
||||
Router::connect('/:controller/:action/*');
|
||||
$result = Router::parse('/posts/view/something.');
|
||||
$this->assertEqual($result['pass'][0], 'something.', 'Period was chopped off %s');
|
||||
|
||||
|
@ -1816,6 +1753,7 @@ class RouterTest extends CakeTestCase {
|
|||
*/
|
||||
public function testParsingWithTrailingPeriodAndParseExtensions() {
|
||||
Router::reload();
|
||||
Router::connect('/:controller/:action/*');
|
||||
Router::parseExtensions('json');
|
||||
|
||||
$result = Router::parse('/posts/view/something.');
|
||||
|
@ -1848,20 +1786,13 @@ class RouterTest extends CakeTestCase {
|
|||
$this->assertEqual($expected, $result);
|
||||
|
||||
$result = Router::parse('/blog/foobar');
|
||||
$expected = array(
|
||||
'plugin' => null,
|
||||
'controller' => 'blog',
|
||||
'action' => 'foobar',
|
||||
'pass' => array(),
|
||||
'named' => array()
|
||||
);
|
||||
$this->assertEqual($expected, $result);
|
||||
$this->assertEquals(array(), $result);
|
||||
|
||||
$result = Router::url(array('controller' => 'blog_posts', 'action' => 'foo'));
|
||||
$this->assertEqual('/blog_posts/foo', $result);
|
||||
$this->assertEquals('/blog_posts/foo', $result);
|
||||
|
||||
$result = Router::url(array('controller' => 'blog_posts', 'action' => 'actions'));
|
||||
$this->assertEqual('/blog/actions', $result);
|
||||
$this->assertEquals('/blog/actions', $result);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1932,10 +1863,6 @@ class RouterTest extends CakeTestCase {
|
|||
$result = Router::url(array('members' => true, 'controller' => 'users', 'action' => 'add'));
|
||||
$expected = '/base/members/users/add';
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
$result = Router::parse('/posts/index');
|
||||
$expected = array('pass' => array(), 'named' => array(), 'plugin' => null, 'controller' => 'posts', 'action' => 'index');
|
||||
$this->assertEqual($expected, $result);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -2068,17 +1995,12 @@ class RouterTest extends CakeTestCase {
|
|||
public function testRegexRouteMatching() {
|
||||
Router::connect('/:locale/:controller/:action/*', array(), array('locale' => 'dan|eng'));
|
||||
|
||||
$result = Router::parse('/test/test_action');
|
||||
$expected = array('pass' => array(), 'named' => array(), 'controller' => 'test', 'action' => 'test_action', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
$result = Router::parse('/eng/test/test_action');
|
||||
$expected = array('pass' => array(), 'named' => array(), 'locale' => 'eng', 'controller' => 'test', 'action' => 'test_action', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
|
||||
$result = Router::parse('/badness/test/test_action');
|
||||
$expected = array('pass' => array('test_action'), 'named' => array(), 'controller' => 'badness', 'action' => 'test', 'plugin' => null);
|
||||
$this->assertEqual($expected, $result);
|
||||
$this->assertEquals(array(), $result);
|
||||
|
||||
Router::reload();
|
||||
Router::connect('/:locale/:controller/:action/*', array(), array('locale' => 'dan|eng'));
|
||||
|
@ -2196,7 +2118,6 @@ class RouterTest extends CakeTestCase {
|
|||
* @return void
|
||||
*/
|
||||
public function testDefaultsMethod() {
|
||||
Router::defaults(false);
|
||||
Router::connect('/test/*', array('controller' => 'pages', 'action' => 'display', 2));
|
||||
$result = Router::parse('/posts/edit/5');
|
||||
$this->assertFalse(isset($result['controller']));
|
||||
|
@ -2216,6 +2137,7 @@ class RouterTest extends CakeTestCase {
|
|||
), true);
|
||||
CakePlugin::loadAll();
|
||||
Router::reload();
|
||||
require CAKE . 'Config' . DS . 'routes.php';
|
||||
|
||||
$result = Router::url(array('plugin' => 'plugin_js', 'controller' => 'js_file', 'action' => 'index'));
|
||||
$this->assertEqual($result, '/plugin_js/js_file');
|
||||
|
|
Loading…
Reference in a new issue