Added RouterGroupTest unit-tests.

This commit is contained in:
Simon Sessingø
2017-09-03 16:49:15 +01:00
parent 3a90578351
commit 7f924c7d0a
4 changed files with 35 additions and 4 deletions
+2 -2
View File
@@ -70,7 +70,7 @@ abstract class Route implements IRoute
$callback = $this->getCallback();
if ($callback === null) {
return;
return null;
}
/* Render callback function */
@@ -162,7 +162,7 @@ abstract class Route implements IRoute
if (isset($parameters[1]) === true) {
/* Only take matched parameters with name */
foreach ($parameters[1] as $name) {
foreach ((array)$parameters[1] as $name) {
$values[$name] = (isset($matches[$name]) && $matches[$name] !== '') ? $matches[$name] : null;
}
}
+2 -2
View File
@@ -48,7 +48,7 @@ class RouteGroup extends Route implements IGroupRoute
*/
public function matchRoute($url, Request $request)
{
if($this->prefix !== null) {
if ($this->prefix !== null) {
/* Parse parameters from current route */
$parameters = $this->parseParameters($this->prefix, $url);
@@ -162,7 +162,7 @@ class RouteGroup extends Route implements IGroupRoute
$this->setExceptionHandlers((array)$values['exceptionHandler']);
}
if ($merge === false &&isset($values['domain'])) {
if ($merge === false && isset($values['domain'])) {
$this->setDomains((array)$values['domain']);
}
+2
View File
@@ -258,6 +258,7 @@ class Router
if ($rewriteUrl !== null && $rewriteUrl !== $url) {
unset($this->processedRoutes[$i]);
$this->processedRoutes = array_values($this->processedRoutes);
return $this->routeRequest(true);
}
@@ -334,6 +335,7 @@ class Router
if ($rewriteUrl !== null && $rewriteUrl !== $url) {
unset($this->exceptionHandlers[$i]);
$this->exceptionHandlers = array_values($this->exceptionHandlers);
return $this->routeRequest(true);
}
}
+29
View File
@@ -0,0 +1,29 @@
<?php
require_once 'Dummy/DummyMiddleware.php';
require_once 'Dummy/DummyController.php';
require_once 'Dummy/Handler/ExceptionHandler.php';
require_once 'Helpers/TestRouter.php';
class RouterGroupTest extends PHPUnit_Framework_TestCase
{
public function testParameters()
{
$result1 = null;
$result2 = null;
TestRouter::group(['prefix' => '{param1}/{param2}'], function ($param1 = null, $param2 = null) use (&$result1, &$result2) {
$result1 = $param1;
$result2 = $param2;
TestRouter::get('/', 'DummyController@method1');
});
TestRouter::debug('/param1/param2', 'get');
$this->assertEquals('param1', $result1);
$this->assertEquals('param2', $result2);
}
}