Deprecate RouteBuilder
This commit is contained in:
parent
614da5f2ff
commit
b582fcf546
|
|
@ -18,6 +18,9 @@ use pjdietz\WellRESTed\Routes\TemplateRoute;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Class for facilitating constructing Routers.
|
* Class for facilitating constructing Routers.
|
||||||
|
*
|
||||||
|
* @deprecated Use {@see Router::add} instead.
|
||||||
|
* @see Router::add
|
||||||
*/
|
*/
|
||||||
class RouteBuilder
|
class RouteBuilder
|
||||||
{
|
{
|
||||||
|
|
@ -28,6 +31,11 @@ class RouteBuilder
|
||||||
/** @var array Associative array of variable names and regex patterns. */
|
/** @var array Associative array of variable names and regex patterns. */
|
||||||
private $templateVariablePatterns;
|
private $templateVariablePatterns;
|
||||||
|
|
||||||
|
public function __construct()
|
||||||
|
{
|
||||||
|
trigger_error("RouteBuilder is deprecated. Use Router::add", E_USER_DEPRECATED);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Contruct and return an array of routes.
|
* Contruct and return an array of routes.
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ class RouteBuilderTest extends \PHPUnit_Framework_TestCase
|
||||||
}
|
}
|
||||||
JSON;
|
JSON;
|
||||||
|
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$routes = $builder->buildRoutes($json);
|
$routes = $builder->buildRoutes($json);
|
||||||
$this->assertEquals(3, count($routes));
|
$this->assertEquals(3, count($routes));
|
||||||
}
|
}
|
||||||
|
|
@ -44,17 +44,17 @@ JSON;
|
||||||
* @expectedException \pjdietz\WellRESTed\Exceptions\ParseException
|
* @expectedException \pjdietz\WellRESTed\Exceptions\ParseException
|
||||||
* @expectedExceptionMessage Unable to parse as JSON.
|
* @expectedExceptionMessage Unable to parse as JSON.
|
||||||
*/
|
*/
|
||||||
public function testFailBuildingRoutesFromInvalidJson()
|
public function testThrowsExceptionBuildingRoutesFromInvalidJson()
|
||||||
{
|
{
|
||||||
$json = "jadhjaksd";
|
$json = "jadhjaksd";
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$builder->buildRoutes($json);
|
$builder->buildRoutes($json);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testSetNamesapce()
|
public function testSetsNamesapce()
|
||||||
{
|
{
|
||||||
$namespace = "\\test\\Namespace";
|
$namespace = "\\test\\Namespace";
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$builder->setHandlerNamespace($namespace);
|
$builder->setHandlerNamespace($namespace);
|
||||||
$this->assertEquals($namespace, $builder->getHandlerNamespace());
|
$this->assertEquals($namespace, $builder->getHandlerNamespace());
|
||||||
}
|
}
|
||||||
|
|
@ -62,9 +62,9 @@ JSON;
|
||||||
/**
|
/**
|
||||||
* @dataProvider varProvider
|
* @dataProvider varProvider
|
||||||
*/
|
*/
|
||||||
public function testSetDefaultVariablePatternThroughAccessor($name, $pattern, $expected)
|
public function testSetsDefaultVariablePatternThroughAccessor($name, $pattern, $expected)
|
||||||
{
|
{
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$builder->setDefaultVariablePattern($pattern);
|
$builder->setDefaultVariablePattern($pattern);
|
||||||
$this->assertEquals($builder->getDefaultVariablePattern(), $expected);
|
$this->assertEquals($builder->getDefaultVariablePattern(), $expected);
|
||||||
}
|
}
|
||||||
|
|
@ -72,9 +72,9 @@ JSON;
|
||||||
/**
|
/**
|
||||||
* @dataProvider varProvider
|
* @dataProvider varProvider
|
||||||
*/
|
*/
|
||||||
public function testSetDefaultVariablePatternThroughConfiguration($name, $pattern, $expected)
|
public function testSetsDefaultVariablePatternThroughConfiguration($name, $pattern, $expected)
|
||||||
{
|
{
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$conf = new stdClass();
|
$conf = new stdClass();
|
||||||
$conf->variablePattern = $pattern;
|
$conf->variablePattern = $pattern;
|
||||||
$builder->readConfiguration($conf);
|
$builder->readConfiguration($conf);
|
||||||
|
|
@ -84,9 +84,9 @@ JSON;
|
||||||
/**
|
/**
|
||||||
* @dataProvider varProvider
|
* @dataProvider varProvider
|
||||||
*/
|
*/
|
||||||
public function testSetTemplateVariablesThroughAccessor($name, $pattern, $expected)
|
public function testSetsTemplateVariablesThroughAccessor($name, $pattern, $expected)
|
||||||
{
|
{
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$builder->setTemplateVars(array($name => $pattern));
|
$builder->setTemplateVars(array($name => $pattern));
|
||||||
$vars = $builder->getTemplateVars();
|
$vars = $builder->getTemplateVars();
|
||||||
$this->assertEquals($vars[$name], $expected);
|
$this->assertEquals($vars[$name], $expected);
|
||||||
|
|
@ -95,9 +95,9 @@ JSON;
|
||||||
/**
|
/**
|
||||||
* @dataProvider varProvider
|
* @dataProvider varProvider
|
||||||
*/
|
*/
|
||||||
public function testSetTemplateVariablesThroughConfiguration($name, $pattern, $expected)
|
public function testSetsTemplateVariablesThroughConfiguration($name, $pattern, $expected)
|
||||||
{
|
{
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$conf = new stdClass();
|
$conf = new stdClass();
|
||||||
$conf->vars = [$name => $pattern];
|
$conf->vars = [$name => $pattern];
|
||||||
$builder->readConfiguration($conf);
|
$builder->readConfiguration($conf);
|
||||||
|
|
@ -120,7 +120,7 @@ JSON;
|
||||||
/**
|
/**
|
||||||
* @dataProvider routeDescriptionProvider
|
* @dataProvider routeDescriptionProvider
|
||||||
*/
|
*/
|
||||||
public function testBuildRoutesFromRoutesArray($key, $value, $expectedClass)
|
public function testBuildsRoutesFromRoutesArray($key, $value, $expectedClass)
|
||||||
{
|
{
|
||||||
$mockHander = $this->getMock('\pjdietz\WellRESTed\Interfaces\HandlerInterface');
|
$mockHander = $this->getMock('\pjdietz\WellRESTed\Interfaces\HandlerInterface');
|
||||||
$routes = [
|
$routes = [
|
||||||
|
|
@ -129,7 +129,7 @@ JSON;
|
||||||
"handler" => get_class($mockHander)
|
"handler" => get_class($mockHander)
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$routes = $builder->buildRoutes($routes);
|
$routes = $builder->buildRoutes($routes);
|
||||||
$route = $routes[0];
|
$route = $routes[0];
|
||||||
$this->assertInstanceOf($expectedClass, $route);
|
$this->assertInstanceOf($expectedClass, $route);
|
||||||
|
|
@ -138,7 +138,7 @@ JSON;
|
||||||
/**
|
/**
|
||||||
* @dataProvider routeDescriptionProvider
|
* @dataProvider routeDescriptionProvider
|
||||||
*/
|
*/
|
||||||
public function testBuildRoutesFromConfigurationObject($key, $value, $expectedClass)
|
public function testBuildsRoutesFromConfigurationObject($key, $value, $expectedClass)
|
||||||
{
|
{
|
||||||
$mockHander = $this->getMock('\pjdietz\WellRESTed\Interfaces\HandlerInterface');
|
$mockHander = $this->getMock('\pjdietz\WellRESTed\Interfaces\HandlerInterface');
|
||||||
$conf = (object) [
|
$conf = (object) [
|
||||||
|
|
@ -149,7 +149,7 @@ JSON;
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$routes = $builder->buildRoutes($conf);
|
$routes = $builder->buildRoutes($conf);
|
||||||
$route = $routes[0];
|
$route = $routes[0];
|
||||||
$this->assertInstanceOf($expectedClass, $route);
|
$this->assertInstanceOf($expectedClass, $route);
|
||||||
|
|
@ -164,7 +164,7 @@ JSON;
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testBuildRoutesWithTemplateVariables()
|
public function testBuildsRoutesWithTemplateVariables()
|
||||||
{
|
{
|
||||||
$mock = $this->getMock('\pjdietz\WellRESTed\Interfaces\HandlerInterface');
|
$mock = $this->getMock('\pjdietz\WellRESTed\Interfaces\HandlerInterface');
|
||||||
$routes = [
|
$routes = [
|
||||||
|
|
@ -176,7 +176,7 @@ JSON;
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$builder->setTemplateVars(["dogId" => "NUM"]);
|
$builder->setTemplateVars(["dogId" => "NUM"]);
|
||||||
$routes = $builder->buildRoutes($routes);
|
$routes = $builder->buildRoutes($routes);
|
||||||
$route = $routes[0];
|
$route = $routes[0];
|
||||||
|
|
@ -187,10 +187,10 @@ JSON;
|
||||||
* @expectedException \pjdietz\WellRESTed\Exceptions\ParseException
|
* @expectedException \pjdietz\WellRESTed\Exceptions\ParseException
|
||||||
* @expectedExceptionMessage Unable to parse. Missing array of routes.
|
* @expectedExceptionMessage Unable to parse. Missing array of routes.
|
||||||
*/
|
*/
|
||||||
public function testFailOnConfigurationObjectMissingRoutesArray()
|
public function testThrowsExceptionWhenConfigurationObjectIsMissingRoutesArray()
|
||||||
{
|
{
|
||||||
$conf = new stdClass();
|
$conf = new stdClass();
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$builder->buildRoutes($conf);
|
$builder->buildRoutes($conf);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -198,14 +198,14 @@ JSON;
|
||||||
* @expectedException \pjdietz\WellRESTed\Exceptions\ParseException
|
* @expectedException \pjdietz\WellRESTed\Exceptions\ParseException
|
||||||
* @expectedExceptionMessage Unable to parse. Route is missing a handler.
|
* @expectedExceptionMessage Unable to parse. Route is missing a handler.
|
||||||
*/
|
*/
|
||||||
public function testFailOnRouteMissingHandler()
|
public function testThrowsExceptionWhenMissingHandler()
|
||||||
{
|
{
|
||||||
$routes = [
|
$routes = [
|
||||||
(object) [
|
(object) [
|
||||||
"path" => "/"
|
"path" => "/"
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
$builder = new RouteBuilder();
|
$builder = @new RouteBuilder();
|
||||||
$builder->buildRoutes($routes);
|
$builder->buildRoutes($routes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue