|
|
@ -61,4 +61,85 @@ class RouterTest extends PHPUnit_Framework_TestCase |
|
|
|
$router->setDefaultLayout('userLayout'); |
|
|
|
$this->assertAttributeEquals('userLayout', 'default_layout', $router); |
|
|
|
} |
|
|
|
|
|
|
|
public function testGetRoute() |
|
|
|
{ |
|
|
|
$route = 'route object.'; |
|
|
|
$router = new Router(); |
|
|
|
$reflection = new ReflectionProperty('Router', 'route'); |
|
|
|
$reflection->setAccessible(true); |
|
|
|
$reflection->setValue($router, $route); |
|
|
|
$this->assertEquals($route, $router->getRoute()); |
|
|
|
} |
|
|
|
|
|
|
|
public function testGetUriWithNameIsNull() |
|
|
|
{ |
|
|
|
$name = null; |
|
|
|
$uri = 'uri from route.'; |
|
|
|
$route_mock = $this->getMockBuilder('Route') |
|
|
|
->disableOriginalConstructor() |
|
|
|
->setMethods(array('getUri')) |
|
|
|
->getMock(); |
|
|
|
$route_mock->expects($this->once()) |
|
|
|
->method('getUri') |
|
|
|
->with() |
|
|
|
->will($this->returnValue($uri)); |
|
|
|
$router_mock = $this->getMockBuilder('Router') |
|
|
|
->disableOriginalConstructor() |
|
|
|
->setMethods(array('getRoute')) |
|
|
|
->getMock(); |
|
|
|
$router_mock->expects($this->once()) |
|
|
|
->method('getRoute') |
|
|
|
->with() |
|
|
|
->will($this->returnValue($route_mock)); |
|
|
|
$this->assertEquals($uri, $router_mock->getUri($name)); |
|
|
|
} |
|
|
|
|
|
|
|
public function testGetUriWithNamed() |
|
|
|
{ |
|
|
|
$name = 'name of route'; |
|
|
|
$uri = 'uri from route.'; |
|
|
|
$route_mock = $this->getMockBuilder('Route') |
|
|
|
->disableOriginalConstructor() |
|
|
|
->setMethods(array('getUri')) |
|
|
|
->getMock(); |
|
|
|
$route_mock->expects($this->once()) |
|
|
|
->method('getUri') |
|
|
|
->with() |
|
|
|
->will($this->returnValue($uri)); |
|
|
|
$router_mock = $this->getMockBuilder('Router') |
|
|
|
->disableOriginalConstructor() |
|
|
|
->setMethods(array('getRoute', 'routeIsExists', 'getRouteByName')) |
|
|
|
->getMock(); |
|
|
|
$router_mock->expects($this->never()) |
|
|
|
->method('getRoute'); |
|
|
|
$router_mock->expects($this->at(0)) |
|
|
|
->method('routeIsExists') |
|
|
|
->with($this->equalTo($name)) |
|
|
|
->will($this->returnValue(true)); |
|
|
|
$router_mock->expects($this->at(1)) |
|
|
|
->method('getRouteByName') |
|
|
|
->with($this->equalTo($name)) |
|
|
|
->will($this->returnValue($route_mock)); |
|
|
|
$this->assertEquals($uri, $router_mock->getUri($name)); |
|
|
|
} |
|
|
|
|
|
|
|
public function testGetUriWithNamedWithError() |
|
|
|
{ |
|
|
|
$name = 'name of route'; |
|
|
|
$router_mock = $this->getMockBuilder('Router') |
|
|
|
->disableOriginalConstructor() |
|
|
|
->setMethods(array('getRoute', 'routeIsExists', 'getRouteByName')) |
|
|
|
->getMock(); |
|
|
|
$router_mock->expects($this->never()) |
|
|
|
->method('getRoute'); |
|
|
|
$router_mock->expects($this->once()) |
|
|
|
->method('routeIsExists') |
|
|
|
->with($this->equalTo($name)) |
|
|
|
->will($this->returnValue(false)); |
|
|
|
$router_mock->expects($this->never()) |
|
|
|
->method('getRouteByName'); |
|
|
|
$this->setExpectedException('ErrorException'); |
|
|
|
$router_mock->getUri($name); |
|
|
|
} |
|
|
|
} |