diff --git a/Tests/Fixtures/nonesense_resource_plus_path.yml b/Tests/Fixtures/nonesense_resource_plus_path.yml index eba64e56..a3e94737 100644 --- a/Tests/Fixtures/nonesense_resource_plus_path.yml +++ b/Tests/Fixtures/nonesense_resource_plus_path.yml @@ -1,3 +1,3 @@ blog_show: resource: validpattern.yml - pattern: /test + path: /test diff --git a/Tests/Fixtures/nonesense_type_without_resource.yml b/Tests/Fixtures/nonesense_type_without_resource.yml index 3b4c7689..547cda3b 100644 --- a/Tests/Fixtures/nonesense_type_without_resource.yml +++ b/Tests/Fixtures/nonesense_type_without_resource.yml @@ -1,3 +1,3 @@ blog_show: - pattern: /blog/{slug} + path: /blog/{slug} type: custom diff --git a/Tests/Fixtures/special_route_name.yml b/Tests/Fixtures/special_route_name.yml index 1009741a..78be239a 100644 --- a/Tests/Fixtures/special_route_name.yml +++ b/Tests/Fixtures/special_route_name.yml @@ -1,2 +1,2 @@ "#$péß^a|": - pattern: "true" + path: "true" diff --git a/Tests/Fixtures/validpattern.php b/Tests/Fixtures/validpattern.php index 08e7d6e3..9841458a 100644 --- a/Tests/Fixtures/validpattern.php +++ b/Tests/Fixtures/validpattern.php @@ -6,9 +6,18 @@ $collection->add('blog_show', new Route( '/blog/{slug}', array('_controller' => 'MyBlogBundle:Blog:show'), - array('_method' => 'GET', 'locale' => '\w+'), + array('_method' => 'GET', 'locale' => '\w+', '_scheme' => 'https'), array('compiler_class' => 'RouteCompiler'), '{locale}.example.com' )); +$collection->add('blog_show_legacy', new Route( + '/blog/{slug}', + array('_controller' => 'MyBlogBundle:Blog:show'), + array('locale' => '\w+'), + array('compiler_class' => 'RouteCompiler'), + '{locale}.example.com', + array('https'), + array('GET') +)); return $collection; diff --git a/Tests/Fixtures/validpattern.xml b/Tests/Fixtures/validpattern.xml index eb3aea78..df3a256a 100644 --- a/Tests/Fixtures/validpattern.xml +++ b/Tests/Fixtures/validpattern.xml @@ -4,9 +4,16 @@ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symfony.com/schema/routing http://symfony.com/schema/routing/routing-1.0.xsd"> - + + MyBundle:Blog:show + \w+ + + + + MyBundle:Blog:show GET + https \w+ diff --git a/Tests/Fixtures/validpattern.yml b/Tests/Fixtures/validpattern.yml index d78a3e44..419923e9 100644 --- a/Tests/Fixtures/validpattern.yml +++ b/Tests/Fixtures/validpattern.yml @@ -1,7 +1,17 @@ blog_show: + path: /blog/{slug} + defaults: { _controller: MyBlogBundle:Blog:show } + host: "{locale}.example.com" + requirements: { 'locale': '\w+' } + methods: ['GET'] + schemes: ['https'] + options: + compiler_class: RouteCompiler + +blog_show_legacy: pattern: /blog/{slug} defaults: { _controller: MyBlogBundle:Blog:show } - host : "{locale}.example.com" - requirements: { '_method': 'GET', 'locale': '\w+' } + host: "{locale}.example.com" + requirements: { '_method': 'GET', 'locale': '\w+', _scheme: 'https' } options: compiler_class: RouteCompiler diff --git a/Tests/Loader/PhpFileLoaderTest.php b/Tests/Loader/PhpFileLoaderTest.php index 6cb24568..7494fb01 100644 --- a/Tests/Loader/PhpFileLoaderTest.php +++ b/Tests/Loader/PhpFileLoaderTest.php @@ -40,13 +40,16 @@ public function testLoadWithRoute() $routeCollection = $loader->load('validpattern.php'); $routes = $routeCollection->all(); - $this->assertEquals(1, count($routes), 'One route is loaded'); + $this->assertCount(2, $routes, 'Two routes are loaded'); $this->assertContainsOnly('Symfony\Component\Routing\Route', $routes); - $route = $routes['blog_show']; - $this->assertEquals('/blog/{slug}', $route->getPath()); - $this->assertEquals('MyBlogBundle:Blog:show', $route->getDefault('_controller')); - $this->assertEquals('GET', $route->getRequirement('_method')); - $this->assertEquals('{locale}.example.com', $route->getHost()); - $this->assertEquals('RouteCompiler', $route->getOption('compiler_class')); + + foreach ($routes as $route) { + $this->assertEquals('/blog/{slug}', $route->getPath()); + $this->assertEquals('MyBlogBundle:Blog:show', $route->getDefault('_controller')); + $this->assertEquals('GET', $route->getRequirement('_method')); + $this->assertEquals('https', $route->getRequirement('_scheme')); + $this->assertEquals('{locale}.example.com', $route->getHost()); + $this->assertEquals('RouteCompiler', $route->getOption('compiler_class')); + } } } diff --git a/Tests/Loader/XmlFileLoaderTest.php b/Tests/Loader/XmlFileLoaderTest.php index e4046824..b67ebf34 100644 --- a/Tests/Loader/XmlFileLoaderTest.php +++ b/Tests/Loader/XmlFileLoaderTest.php @@ -41,12 +41,13 @@ public function testLoadWithRoute() $routeCollection = $loader->load('validpattern.xml'); $routes = $routeCollection->all(); - $this->assertEquals(1, count($routes), 'One route is loaded'); + $this->assertCount(2, $routes, 'Two routes are loaded'); $this->assertContainsOnly('Symfony\Component\Routing\Route', $routes); $route = $routes['blog_show']; $this->assertEquals('/blog/{slug}', $route->getPath()); $this->assertEquals('MyBundle:Blog:show', $route->getDefault('_controller')); $this->assertEquals('GET', $route->getRequirement('_method')); + $this->assertEquals('https', $route->getRequirement('_scheme')); $this->assertEquals('\w+', $route->getRequirement('locale')); $this->assertEquals('{locale}.example.com', $route->getHost()); $this->assertEquals('RouteCompiler', $route->getOption('compiler_class')); @@ -57,7 +58,8 @@ public function testLoadWithNamespacePrefix() $loader = new XmlFileLoader(new FileLocator(array(__DIR__.'/../Fixtures'))); $routeCollection = $loader->load('namespaceprefix.xml'); - $this->assertCount(1, $routeCollection, 'One route is loaded'); + $this->assertCount(1, $routeCollection->all(), 'One route is loaded'); + $route = $routeCollection->get('blog_show'); $this->assertEquals('/blog/{slug}', $route->getPath()); $this->assertEquals('MyBundle:Blog:show', $route->getDefault('_controller')); @@ -73,14 +75,17 @@ public function testLoadWithImport() $routeCollection = $loader->load('validresource.xml'); $routes = $routeCollection->all(); - $this->assertEquals(1, count($routes), 'One route is loaded'); + $this->assertCount(2, $routes, 'Two routes are loaded'); $this->assertContainsOnly('Symfony\Component\Routing\Route', $routes); - $this->assertEquals('/{foo}/blog/{slug}', $routes['blog_show']->getPath()); - $this->assertEquals('MyBundle:Blog:show', $routes['blog_show']->getDefault('_controller')); - $this->assertEquals('123', $routes['blog_show']->getDefault('foo')); - $this->assertEquals('\d+', $routes['blog_show']->getRequirement('foo')); - $this->assertEquals('bar', $routes['blog_show']->getOption('foo')); - $this->assertEquals('{locale}.example.com', $routes['blog_show']->getHost()); + + foreach ($routes as $route) { + $this->assertEquals('/{foo}/blog/{slug}', $routes['blog_show']->getPath()); + $this->assertEquals('MyBundle:Blog:show', $routes['blog_show']->getDefault('_controller')); + $this->assertEquals('123', $routes['blog_show']->getDefault('foo')); + $this->assertEquals('\d+', $routes['blog_show']->getRequirement('foo')); + $this->assertEquals('bar', $routes['blog_show']->getOption('foo')); + $this->assertEquals('{locale}.example.com', $routes['blog_show']->getHost()); + } } /** diff --git a/Tests/Loader/YamlFileLoaderTest.php b/Tests/Loader/YamlFileLoaderTest.php index bb055de4..b6234bf8 100644 --- a/Tests/Loader/YamlFileLoaderTest.php +++ b/Tests/Loader/YamlFileLoaderTest.php @@ -79,15 +79,18 @@ public function testLoadWithPattern() $routeCollection = $loader->load('validpattern.yml'); $routes = $routeCollection->all(); - $this->assertEquals(1, count($routes), 'One route is loaded'); + $this->assertCount(2, $routes, 'Two routes are loaded'); $this->assertContainsOnly('Symfony\Component\Routing\Route', $routes); - $route = $routes['blog_show']; - $this->assertEquals('/blog/{slug}', $route->getPath()); - $this->assertEquals('MyBlogBundle:Blog:show', $route->getDefault('_controller')); - $this->assertEquals('GET', $route->getRequirement('_method')); - $this->assertEquals('\w+', $route->getRequirement('locale')); - $this->assertEquals('{locale}.example.com', $route->getHost()); - $this->assertEquals('RouteCompiler', $route->getOption('compiler_class')); + + foreach ($routes as $route) { + $this->assertEquals('/blog/{slug}', $route->getPath()); + $this->assertEquals('MyBlogBundle:Blog:show', $route->getDefault('_controller')); + $this->assertEquals('GET', $route->getRequirement('_method')); + $this->assertEquals('https', $route->getRequirement('_scheme')); + $this->assertEquals('\w+', $route->getRequirement('locale')); + $this->assertEquals('{locale}.example.com', $route->getHost()); + $this->assertEquals('RouteCompiler', $route->getOption('compiler_class')); + } } public function testLoadWithResource() @@ -96,7 +99,7 @@ public function testLoadWithResource() $routeCollection = $loader->load('validresource.yml'); $routes = $routeCollection->all(); - $this->assertEquals(1, count($routes), 'One route is loaded'); + $this->assertCount(2, $routes, 'Two routes are loaded'); $this->assertContainsOnly('Symfony\Component\Routing\Route', $routes); $this->assertEquals('/{foo}/blog/{slug}', $routes['blog_show']->getPath()); $this->assertEquals('MyBlogBundle:Blog:show', $routes['blog_show']->getDefault('_controller'));