Browse Source

added getter and setter to Router to use error layout

master
Anton Grebnev 12 years ago
parent
commit
90a8cb30e6
  1. 20
      app/router/Router.php
  2. 13
      tests/app/router/RouterTest.php

20
app/router/Router.php

@ -18,6 +18,8 @@ class Router
protected $default_layout = 'Default';
protected $error_layout = 'Error';
/**
* @var Route
*/
@ -51,6 +53,24 @@ class Router
$this->default_layout = $layout;
}
/**
* Sets the name of error page layout
* @param string $layout
*/
public function setErrorLayout($layout = 'Error')
{
$this->error_layout = $layout;
}
/**
* Returns error layout name
* @return string Error layout name
*/
public function getErrorLayout()
{
return $this->error_layout . 'Layout';
}
public function getRouteName()
{
return $this->route_name;

13
tests/app/router/RouterTest.php

@ -106,4 +106,17 @@ class RouterTest extends PHPUnit_Framework_TestCase
$this->assertTrue($router->routeIsExists($name));
$this->assertFalse($router->routeIsExists($name_is_not_exists));
}
public function testGetDefaultErrorLayout()
{
$router = new Router();
$this->assertSame('ErrorLayout', $router->getErrorLayout());
}
public function testSetErrorLayout()
{
$router = new Router();
$router->setErrorLayout('CustomError');
$this->assertSame('CustomErrorLayout', $router->getErrorLayout());
}
}
Loading…
Cancel
Save