[limb-svn] r7114 - in 3.x/trunk/limb/web_app: src/request tests/cases/plain/request
svn at limb-project.com
svn at limb-project.com
Sat Jul 12 18:59:48 MSD 2008
Author: serega
Date: 2008-07-12 18:59:47 +0400 (Sat, 12 Jul 2008)
New Revision: 7114
URL: http://fisheye.limb-project.com/changelog/limb/?cs=7114
Modified:
3.x/trunk/limb/web_app/src/request/lmbRoutesRequestDispatcher.class.php
3.x/trunk/limb/web_app/tests/cases/plain/request/lmbRoutesRequestDispatcherTest.class.php
Log:
-- lmbRoutesRequestDispatcher now takes "controller" request param instead of dispatched one if specified.
Modified: 3.x/trunk/limb/web_app/src/request/lmbRoutesRequestDispatcher.class.php
===================================================================
--- 3.x/trunk/limb/web_app/src/request/lmbRoutesRequestDispatcher.class.php 2008-07-11 07:34:58 UTC (rev 7113)
+++ 3.x/trunk/limb/web_app/src/request/lmbRoutesRequestDispatcher.class.php 2008-07-12 14:59:47 UTC (rev 7114)
@@ -45,6 +45,8 @@
if($action = $request->get('action'))
$result['action'] = $action;
+ if($controller = $request->get('controller'))
+ $result['controller'] = $controller;
return $result;
}
Modified: 3.x/trunk/limb/web_app/tests/cases/plain/request/lmbRoutesRequestDispatcherTest.class.php
===================================================================
--- 3.x/trunk/limb/web_app/tests/cases/plain/request/lmbRoutesRequestDispatcherTest.class.php 2008-07-11 07:34:58 UTC (rev 7113)
+++ 3.x/trunk/limb/web_app/tests/cases/plain/request/lmbRoutesRequestDispatcherTest.class.php 2008-07-12 14:59:47 UTC (rev 7114)
@@ -57,6 +57,23 @@
$this->assertEqual($result['action'], 'admin_display');
}
+ function testUseControllerNameFromRequestEvenIfMatchedByRoutes()
+ {
+ $config_array = array(array('path' => '/:controller/:action'));
+ $routes = new lmbRoutes($config_array);
+ $this->toolkit->setRoutes($routes);
+
+ $this->request->getUri()->parse('/news/display');
+ $this->request->set('action', 'admin_display'); // !!!
+ $this->request->set('controller', 'my_controller'); // !!!
+
+ $dispatcher = new lmbRoutesRequestDispatcher();
+ $result = $dispatcher->dispatch($this->request);
+
+ $this->assertEqual($result['controller'], 'my_controller');
+ $this->assertEqual($result['action'], 'admin_display');
+ }
+
function testNormalizeUrl()
{
$config_array = array(array('path' => '/:controller/:action'));
More information about the limb-svn
mailing list