X-Git-Url: http://aleph1.co.uk/gitweb/?a=blobdiff_plain;f=vendor%2Fsymfony-cmf%2Frouting%2FTests%2FDependencyInjection%2FCompiler%2FRegisterRouteEnhancersPassTest.php;fp=vendor%2Fsymfony-cmf%2Frouting%2FTests%2FDependencyInjection%2FCompiler%2FRegisterRouteEnhancersPassTest.php;h=99383f8395ba07fa9f0272f31af284c439f3fd4b;hb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;hp=0000000000000000000000000000000000000000;hpb=57c063afa3f66b07c4bbddc2d6129a96d90f0aad;p=yaffs-website diff --git a/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php b/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php new file mode 100644 index 000000000..99383f839 --- /dev/null +++ b/vendor/symfony-cmf/routing/Tests/DependencyInjection/Compiler/RegisterRouteEnhancersPassTest.php @@ -0,0 +1,78 @@ + array( + 0 => array( + 'id' => 'foo_enhancer', + ), + ), + ); + + $builder = $this->getContainerBuilderMock(); + $definition = new Definition('router'); + $builder->expects($this->at(0)) + ->method('hasDefinition') + ->with('cmf_routing.dynamic_router') + ->will($this->returnValue(true)) + ; + $builder->expects($this->any()) + ->method('findTaggedServiceIds') + ->will($this->returnValue($serviceIds)) + ; + $builder->expects($this->any()) + ->method('getDefinition') + ->with('cmf_routing.dynamic_router') + ->will($this->returnValue($definition)) + ; + + $pass = new RegisterRouteEnhancersPass(); + $pass->process($builder); + + $calls = $definition->getMethodCalls(); + $this->assertEquals(1, count($calls)); + $this->assertEquals('addRouteEnhancer', $calls[0][0]); + } + + /** + * If there is no dynamic router defined in the container builder, nothing + * should be processed. + */ + public function testNoDynamicRouter() + { + $builder = $this->getContainerBuilderMock(); + $builder->expects($this->once()) + ->method('hasDefinition') + ->with('cmf_routing.dynamic_router') + ->will($this->returnValue(false)) + ; + + $pass = new RegisterRouteEnhancersPass(); + $pass->process($builder); + } + + protected function getContainerBuilderMock(array $functions = array()) + { + return $this->getMock( + 'Symfony\Component\DependencyInjection\ContainerBuilder', + array_merge(array('hasDefinition', 'findTaggedServiceIds', 'getDefinition'), $functions) + ); + } +}