add files used in FileResource objects
Starting with Symfony 3.1, the constructor of the `FileResource` class will throw an exception when the passed file does not exist.
This commit is contained in:
parent
bad218d44e
commit
73afd0f0e7
@ -87,7 +87,9 @@ abstract class ObjectRouteLoader extends Loader
|
||||
private function addClassResource(\ReflectionClass $class, RouteCollection $collection)
|
||||
{
|
||||
do {
|
||||
if (is_file($class->getFileName())) {
|
||||
$collection->addResource(new FileResource($class->getFileName()));
|
||||
}
|
||||
} while ($class = $class->getParentClass());
|
||||
}
|
||||
}
|
||||
|
@ -25,17 +25,8 @@ class ObjectRouteLoaderTest extends \PHPUnit_Framework_TestCase
|
||||
$collection = new RouteCollection();
|
||||
$collection->add('foo', new Route('/foo'));
|
||||
|
||||
// create some callable object
|
||||
$service = $this->getMockBuilder('stdClass')
|
||||
->setMethods(array('loadRoutes'))
|
||||
->getMock();
|
||||
$service->expects($this->once())
|
||||
->method('loadRoutes')
|
||||
->with($loader)
|
||||
->will($this->returnValue($collection));
|
||||
|
||||
$loader->loaderMap = array(
|
||||
'my_route_provider_service' => $service,
|
||||
'my_route_provider_service' => new RouteService($collection),
|
||||
);
|
||||
|
||||
$actualRoutes = $loader->load(
|
||||
@ -114,3 +105,18 @@ class ObjectRouteLoaderForTest extends ObjectRouteLoader
|
||||
return isset($this->loaderMap[$id]) ? $this->loaderMap[$id] : null;
|
||||
}
|
||||
}
|
||||
|
||||
class RouteService
|
||||
{
|
||||
private $collection;
|
||||
|
||||
public function __construct($collection)
|
||||
{
|
||||
$this->collection = $collection;
|
||||
}
|
||||
|
||||
public function loadRoutes()
|
||||
{
|
||||
return $this->collection;
|
||||
}
|
||||
}
|
||||
|
@ -30,7 +30,7 @@ class RouteCollectionBuilderTest extends \PHPUnit_Framework_TestCase
|
||||
$originalRoute = new Route('/foo/path');
|
||||
$expectedCollection = new RouteCollection();
|
||||
$expectedCollection->add('one_test_route', $originalRoute);
|
||||
$expectedCollection->addResource(new FileResource('file_resource.yml'));
|
||||
$expectedCollection->addResource(new FileResource(__DIR__.'/Fixtures/file_resource.yml'));
|
||||
|
||||
$resolvedLoader
|
||||
->expects($this->once())
|
||||
|
Reference in New Issue
Block a user