From 46b77928f746a4231d064774b5b67fd892c7ce86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20L=C5=93uillet?= Date: Sun, 4 Aug 2013 17:50:34 +0200 Subject: rm vendor --- .../Routing/Tests/Matcher/ApacheUrlMatcherTest.php | 137 -------- .../Matcher/Dumper/ApacheMatcherDumperTest.php | 196 ----------- .../Tests/Matcher/Dumper/DumperCollectionTest.php | 33 -- .../Matcher/Dumper/DumperPrefixCollectionTest.php | 123 ------- .../Tests/Matcher/Dumper/PhpMatcherDumperTest.php | 261 -------------- .../Tests/Matcher/RedirectableUrlMatcherTest.php | 58 ---- .../Tests/Matcher/TraceableUrlMatcherTest.php | 66 ---- .../Routing/Tests/Matcher/UrlMatcherTest.php | 383 --------------------- 8 files changed, 1257 deletions(-) delete mode 100644 vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/ApacheUrlMatcherTest.php delete mode 100644 vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/ApacheMatcherDumperTest.php delete mode 100644 vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperCollectionTest.php delete mode 100644 vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php delete mode 100644 vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php delete mode 100644 vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/RedirectableUrlMatcherTest.php delete mode 100644 vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/TraceableUrlMatcherTest.php delete mode 100644 vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/UrlMatcherTest.php (limited to 'vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher') diff --git a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/ApacheUrlMatcherTest.php b/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/ApacheUrlMatcherTest.php deleted file mode 100644 index 6550911e..00000000 --- a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/ApacheUrlMatcherTest.php +++ /dev/null @@ -1,137 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Routing\Tests\Matcher; - -use Symfony\Component\Routing\RouteCollection; -use Symfony\Component\Routing\RequestContext; -use Symfony\Component\Routing\Matcher\ApacheUrlMatcher; - -class ApacheUrlMatcherTest extends \PHPUnit_Framework_TestCase -{ - protected $server; - - protected function setUp() - { - $this->server = $_SERVER; - } - - protected function tearDown() - { - $_SERVER = $this->server; - } - - /** - * @dataProvider getMatchData - */ - public function testMatch($name, $pathinfo, $server, $expect) - { - $collection = new RouteCollection(); - $context = new RequestContext(); - $matcher = new ApacheUrlMatcher($collection, $context); - - $_SERVER = $server; - - $result = $matcher->match($pathinfo, $server); - $this->assertSame(var_export($expect, true), var_export($result, true)); - } - - public function getMatchData() - { - return array( - array( - 'Simple route', - '/hello/world', - array( - '_ROUTING_route' => 'hello', - '_ROUTING_param__controller' => 'AcmeBundle:Default:index', - '_ROUTING_param_name' => 'world', - ), - array( - '_controller' => 'AcmeBundle:Default:index', - 'name' => 'world', - '_route' => 'hello', - ), - ), - array( - 'Route with params and defaults', - '/hello/hugo', - array( - '_ROUTING_route' => 'hello', - '_ROUTING_param__controller' => 'AcmeBundle:Default:index', - '_ROUTING_param_name' => 'hugo', - '_ROUTING_default_name' => 'world', - ), - array( - 'name' => 'hugo', - '_controller' => 'AcmeBundle:Default:index', - '_route' => 'hello', - ), - ), - array( - 'Route with defaults only', - '/hello', - array( - '_ROUTING_route' => 'hello', - '_ROUTING_param__controller' => 'AcmeBundle:Default:index', - '_ROUTING_default_name' => 'world', - ), - array( - 'name' => 'world', - '_controller' => 'AcmeBundle:Default:index', - '_route' => 'hello', - ), - ), - array( - 'REDIRECT_ envs', - '/hello/world', - array( - 'REDIRECT__ROUTING_route' => 'hello', - 'REDIRECT__ROUTING_param__controller' => 'AcmeBundle:Default:index', - 'REDIRECT__ROUTING_param_name' => 'world', - ), - array( - '_controller' => 'AcmeBundle:Default:index', - 'name' => 'world', - '_route' => 'hello', - ), - ), - array( - 'REDIRECT_REDIRECT_ envs', - '/hello/world', - array( - 'REDIRECT_REDIRECT__ROUTING_route' => 'hello', - 'REDIRECT_REDIRECT__ROUTING_param__controller' => 'AcmeBundle:Default:index', - 'REDIRECT_REDIRECT__ROUTING_param_name' => 'world', - ), - array( - '_controller' => 'AcmeBundle:Default:index', - 'name' => 'world', - '_route' => 'hello', - ), - ), - array( - 'REDIRECT_REDIRECT_ envs', - '/hello/world', - array( - 'REDIRECT_REDIRECT__ROUTING_route' => 'hello', - 'REDIRECT_REDIRECT__ROUTING_param__controller' => 'AcmeBundle:Default:index', - 'REDIRECT_REDIRECT__ROUTING_param_name' => 'world', - ), - array( - '_controller' => 'AcmeBundle:Default:index', - 'name' => 'world', - '_route' => 'hello', - ), - ), - ); - } -} diff --git a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/ApacheMatcherDumperTest.php b/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/ApacheMatcherDumperTest.php deleted file mode 100644 index 72bee710..00000000 --- a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/ApacheMatcherDumperTest.php +++ /dev/null @@ -1,196 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Routing\Tests\Matcher\Dumper; - -use Symfony\Component\Routing\Route; -use Symfony\Component\Routing\RouteCollection; -use Symfony\Component\Routing\Matcher\Dumper\ApacheMatcherDumper; - -class ApacheMatcherDumperTest extends \PHPUnit_Framework_TestCase -{ - protected static $fixturesPath; - - public static function setUpBeforeClass() - { - self::$fixturesPath = realpath(__DIR__.'/../../Fixtures/'); - } - - public function testDump() - { - $dumper = new ApacheMatcherDumper($this->getRouteCollection()); - - $this->assertStringEqualsFile(self::$fixturesPath.'/dumper/url_matcher1.apache', $dumper->dump(), '->dump() dumps basic routes to the correct apache format.'); - } - - /** - * @dataProvider provideEscapeFixtures - */ - public function testEscapePattern($src, $dest, $char, $with, $message) - { - $r = new \ReflectionMethod(new ApacheMatcherDumper($this->getRouteCollection()), 'escape'); - $r->setAccessible(true); - $this->assertEquals($dest, $r->invoke(null, $src, $char, $with), $message); - } - - public function provideEscapeFixtures() - { - return array( - array('foo', 'foo', ' ', '-', 'Preserve string that should not be escaped'), - array('fo-o', 'fo-o', ' ', '-', 'Preserve string that should not be escaped'), - array('fo o', 'fo- o', ' ', '-', 'Escape special characters'), - array('fo-- o', 'fo--- o', ' ', '-', 'Escape special characters'), - array('fo- o', 'fo- o', ' ', '-', 'Do not escape already escaped string'), - ); - } - - public function testEscapeScriptName() - { - $collection = new RouteCollection(); - $collection->add('foo', new Route('/foo')); - $dumper = new ApacheMatcherDumper($collection); - $this->assertStringEqualsFile(self::$fixturesPath.'/dumper/url_matcher2.apache', $dumper->dump(array('script_name' => 'ap p_d\ ev.php'))); - } - - private function getRouteCollection() - { - $collection = new RouteCollection(); - - // defaults and requirements - $collection->add('foo', new Route( - '/foo/{bar}', - array('def' => 'test'), - array('bar' => 'baz|symfony') - )); - // defaults parameters in pattern - $collection->add('foobar', new Route( - '/foo/{bar}', - array('bar' => 'toto') - )); - // method requirement - $collection->add('bar', new Route( - '/bar/{foo}', - array(), - array('_method' => 'GET|head') - )); - // method requirement (again) - $collection->add('baragain', new Route( - '/baragain/{foo}', - array(), - array('_method' => 'get|post') - )); - // simple - $collection->add('baz', new Route( - '/test/baz' - )); - // simple with extension - $collection->add('baz2', new Route( - '/test/baz.html' - )); - // trailing slash - $collection->add('baz3', new Route( - '/test/baz3/' - )); - // trailing slash with variable - $collection->add('baz4', new Route( - '/test/{foo}/' - )); - // trailing slash and safe method - $collection->add('baz5', new Route( - '/test/{foo}/', - array(), - array('_method' => 'get') - )); - // trailing slash and unsafe method - $collection->add('baz5unsafe', new Route( - '/testunsafe/{foo}/', - array(), - array('_method' => 'post') - )); - // complex - $collection->add('baz6', new Route( - '/test/baz', - array('foo' => 'bar baz') - )); - // space in path - $collection->add('baz7', new Route( - '/te st/baz' - )); - // space preceded with \ in path - $collection->add('baz8', new Route( - '/te\\ st/baz' - )); - // space preceded with \ in requirement - $collection->add('baz9', new Route( - '/test/{baz}', - array(), - array( - 'baz' => 'te\\\\ st', - ) - )); - - $collection1 = new RouteCollection(); - - $route1 = new Route('/route1', array(), array(), array(), 'a.example.com'); - $collection1->add('route1', $route1); - - $collection2 = new RouteCollection(); - - $route2 = new Route('/route2', array(), array(), array(), 'a.example.com'); - $collection2->add('route2', $route2); - - $route3 = new Route('/route3', array(), array(), array(), 'b.example.com'); - $collection2->add('route3', $route3); - - $collection2->addPrefix('/c2'); - $collection1->addCollection($collection2); - - $route4 = new Route('/route4', array(), array(), array(), 'a.example.com'); - $collection1->add('route4', $route4); - - $route5 = new Route('/route5', array(), array(), array(), 'c.example.com'); - $collection1->add('route5', $route5); - - $route6 = new Route('/route6', array(), array(), array(), null); - $collection1->add('route6', $route6); - - $collection->addCollection($collection1); - - // host and variables - - $collection1 = new RouteCollection(); - - $route11 = new Route('/route11', array(), array(), array(), '{var1}.example.com'); - $collection1->add('route11', $route11); - - $route12 = new Route('/route12', array('var1' => 'val'), array(), array(), '{var1}.example.com'); - $collection1->add('route12', $route12); - - $route13 = new Route('/route13/{name}', array(), array(), array(), '{var1}.example.com'); - $collection1->add('route13', $route13); - - $route14 = new Route('/route14/{name}', array('var1' => 'val'), array(), array(), '{var1}.example.com'); - $collection1->add('route14', $route14); - - $route15 = new Route('/route15/{name}', array(), array(), array(), 'c.example.com'); - $collection1->add('route15', $route15); - - $route16 = new Route('/route16/{name}', array('var1' => 'val'), array(), array(), null); - $collection1->add('route16', $route16); - - $route17 = new Route('/route17', array(), array(), array(), null); - $collection1->add('route17', $route17); - - $collection->addCollection($collection1); - - return $collection; - } -} diff --git a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperCollectionTest.php b/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperCollectionTest.php deleted file mode 100644 index 54b37727..00000000 --- a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperCollectionTest.php +++ /dev/null @@ -1,33 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Routing\Test\Matcher\Dumper; - -use Symfony\Component\Routing\Matcher\Dumper\DumperCollection; - -class DumperCollectionTest extends \PHPUnit_Framework_TestCase -{ - public function testGetRoot() - { - $a = new DumperCollection(); - - $b = new DumperCollection(); - $a->add($b); - - $c = new DumperCollection(); - $b->add($c); - - $d = new DumperCollection(); - $c->add($d); - - $this->assertSame($a, $c->getRoot()); - } -} diff --git a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php b/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php deleted file mode 100644 index 7b4565c4..00000000 --- a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/DumperPrefixCollectionTest.php +++ /dev/null @@ -1,123 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Routing\Tests\Matcher\Dumper; - -use Symfony\Component\Routing\Route; -use Symfony\Component\Routing\Matcher\Dumper\DumperPrefixCollection; -use Symfony\Component\Routing\Matcher\Dumper\DumperRoute; -use Symfony\Component\Routing\Matcher\Dumper\DumperCollection; - -class DumperPrefixCollectionTest extends \PHPUnit_Framework_TestCase -{ - public function testAddPrefixRoute() - { - $coll = new DumperPrefixCollection; - $coll->setPrefix(''); - - $route = new DumperRoute('bar', new Route('/foo/bar')); - $coll = $coll->addPrefixRoute($route); - - $route = new DumperRoute('bar2', new Route('/foo/bar')); - $coll = $coll->addPrefixRoute($route); - - $route = new DumperRoute('qux', new Route('/foo/qux')); - $coll = $coll->addPrefixRoute($route); - - $route = new DumperRoute('bar3', new Route('/foo/bar')); - $coll = $coll->addPrefixRoute($route); - - $route = new DumperRoute('bar4', new Route('')); - $result = $coll->addPrefixRoute($route); - - $expect = <<<'EOF' - |-coll / - | |-coll /f - | | |-coll /fo - | | | |-coll /foo - | | | | |-coll /foo/ - | | | | | |-coll /foo/b - | | | | | | |-coll /foo/ba - | | | | | | | |-coll /foo/bar - | | | | | | | | |-route bar /foo/bar - | | | | | | | | |-route bar2 /foo/bar - | | | | | |-coll /foo/q - | | | | | | |-coll /foo/qu - | | | | | | | |-coll /foo/qux - | | | | | | | | |-route qux /foo/qux - | | | | | |-coll /foo/b - | | | | | | |-coll /foo/ba - | | | | | | | |-coll /foo/bar - | | | | | | | | |-route bar3 /foo/bar - | |-route bar4 / - -EOF; - - $this->assertSame($expect, $this->collectionToString($result->getRoot(), ' ')); - } - - public function testMergeSlashNodes() - { - $coll = new DumperPrefixCollection; - $coll->setPrefix(''); - - $route = new DumperRoute('bar', new Route('/foo/bar')); - $coll = $coll->addPrefixRoute($route); - - $route = new DumperRoute('bar2', new Route('/foo/bar')); - $coll = $coll->addPrefixRoute($route); - - $route = new DumperRoute('qux', new Route('/foo/qux')); - $coll = $coll->addPrefixRoute($route); - - $route = new DumperRoute('bar3', new Route('/foo/bar')); - $result = $coll->addPrefixRoute($route); - - $result->getRoot()->mergeSlashNodes(); - - $expect = <<<'EOF' - |-coll /f - | |-coll /fo - | | |-coll /foo - | | | |-coll /foo/b - | | | | |-coll /foo/ba - | | | | | |-coll /foo/bar - | | | | | | |-route bar /foo/bar - | | | | | | |-route bar2 /foo/bar - | | | |-coll /foo/q - | | | | |-coll /foo/qu - | | | | | |-coll /foo/qux - | | | | | | |-route qux /foo/qux - | | | |-coll /foo/b - | | | | |-coll /foo/ba - | | | | | |-coll /foo/bar - | | | | | | |-route bar3 /foo/bar - -EOF; - - $this->assertSame($expect, $this->collectionToString($result->getRoot(), ' ')); - } - - private function collectionToString(DumperCollection $collection, $prefix) - { - $string = ''; - foreach ($collection as $route) { - if ($route instanceof DumperCollection) { - $string .= sprintf("%s|-coll %s\n", $prefix, $route->getPrefix()); - $string .= $this->collectionToString($route, $prefix.'| '); - } else { - $string .= sprintf("%s|-route %s %s\n", $prefix, $route->getName(), $route->getRoute()->getPath()); - } - } - - return $string; - } -} diff --git a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php b/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php deleted file mode 100644 index 542ede85..00000000 --- a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/Dumper/PhpMatcherDumperTest.php +++ /dev/null @@ -1,261 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Routing\Tests\Matcher\Dumper; - -use Symfony\Component\Routing\Matcher\Dumper\PhpMatcherDumper; -use Symfony\Component\Routing\Route; -use Symfony\Component\Routing\RouteCollection; - -class PhpMatcherDumperTest extends \PHPUnit_Framework_TestCase -{ - /** - * @expectedException \LogicException - */ - public function testDumpWhenSchemeIsUsedWithoutAProperDumper() - { - $collection = new RouteCollection(); - $collection->add('secure', new Route( - '/secure', - array(), - array('_scheme' => 'https') - )); - $dumper = new PhpMatcherDumper($collection); - $dumper->dump(); - } - - /** - * @dataProvider getRouteCollections - */ - public function testDump(RouteCollection $collection, $fixture, $options = array()) - { - $basePath = __DIR__.'/../../Fixtures/dumper/'; - - $dumper = new PhpMatcherDumper($collection); - $this->assertStringEqualsFile($basePath.$fixture, $dumper->dump($options), '->dump() correctly dumps routes as optimized PHP code.'); - } - - public function getRouteCollections() - { - /* test case 1 */ - - $collection = new RouteCollection(); - - $collection->add('overridden', new Route('/overridden')); - - // defaults and requirements - $collection->add('foo', new Route( - '/foo/{bar}', - array('def' => 'test'), - array('bar' => 'baz|symfony') - )); - // method requirement - $collection->add('bar', new Route( - '/bar/{foo}', - array(), - array('_method' => 'GET|head') - )); - // GET method requirement automatically adds HEAD as valid - $collection->add('barhead', new Route( - '/barhead/{foo}', - array(), - array('_method' => 'GET') - )); - // simple - $collection->add('baz', new Route( - '/test/baz' - )); - // simple with extension - $collection->add('baz2', new Route( - '/test/baz.html' - )); - // trailing slash - $collection->add('baz3', new Route( - '/test/baz3/' - )); - // trailing slash with variable - $collection->add('baz4', new Route( - '/test/{foo}/' - )); - // trailing slash and method - $collection->add('baz5', new Route( - '/test/{foo}/', - array(), - array('_method' => 'post') - )); - // complex name - $collection->add('baz.baz6', new Route( - '/test/{foo}/', - array(), - array('_method' => 'put') - )); - // defaults without variable - $collection->add('foofoo', new Route( - '/foofoo', - array('def' => 'test') - )); - // pattern with quotes - $collection->add('quoter', new Route( - '/{quoter}', - array(), - array('quoter' => '[\']+') - )); - // space in pattern - $collection->add('space', new Route( - '/spa ce' - )); - - // prefixes - $collection1 = new RouteCollection(); - $collection1->add('overridden', new Route('/overridden1')); - $collection1->add('foo1', new Route('/{foo}')); - $collection1->add('bar1', new Route('/{bar}')); - $collection1->addPrefix('/b\'b'); - $collection2 = new RouteCollection(); - $collection2->addCollection($collection1); - $collection2->add('overridden', new Route('/{var}', array(), array('var' => '.*'))); - $collection1 = new RouteCollection(); - $collection1->add('foo2', new Route('/{foo1}')); - $collection1->add('bar2', new Route('/{bar1}')); - $collection1->addPrefix('/b\'b'); - $collection2->addCollection($collection1); - $collection2->addPrefix('/a'); - $collection->addCollection($collection2); - - // overridden through addCollection() and multiple sub-collections with no own prefix - $collection1 = new RouteCollection(); - $collection1->add('overridden2', new Route('/old')); - $collection1->add('helloWorld', new Route('/hello/{who}', array('who' => 'World!'))); - $collection2 = new RouteCollection(); - $collection3 = new RouteCollection(); - $collection3->add('overridden2', new Route('/new')); - $collection3->add('hey', new Route('/hey/')); - $collection2->addCollection($collection3); - $collection1->addCollection($collection2); - $collection1->addPrefix('/multi'); - $collection->addCollection($collection1); - - // "dynamic" prefix - $collection1 = new RouteCollection(); - $collection1->add('foo3', new Route('/{foo}')); - $collection1->add('bar3', new Route('/{bar}')); - $collection1->addPrefix('/b'); - $collection1->addPrefix('{_locale}'); - $collection->addCollection($collection1); - - // route between collections - $collection->add('ababa', new Route('/ababa')); - - // collection with static prefix but only one route - $collection1 = new RouteCollection(); - $collection1->add('foo4', new Route('/{foo}')); - $collection1->addPrefix('/aba'); - $collection->addCollection($collection1); - - // prefix and host - - $collection1 = new RouteCollection(); - - $route1 = new Route('/route1', array(), array(), array(), 'a.example.com'); - $collection1->add('route1', $route1); - - $collection2 = new RouteCollection(); - - $route2 = new Route('/c2/route2', array(), array(), array(), 'a.example.com'); - $collection1->add('route2', $route2); - - $route3 = new Route('/c2/route3', array(), array(), array(), 'b.example.com'); - $collection1->add('route3', $route3); - - $route4 = new Route('/route4', array(), array(), array(), 'a.example.com'); - $collection1->add('route4', $route4); - - $route5 = new Route('/route5', array(), array(), array(), 'c.example.com'); - $collection1->add('route5', $route5); - - $route6 = new Route('/route6', array(), array(), array(), null); - $collection1->add('route6', $route6); - - $collection->addCollection($collection1); - - // host and variables - - $collection1 = new RouteCollection(); - - $route11 = new Route('/route11', array(), array(), array(), '{var1}.example.com'); - $collection1->add('route11', $route11); - - $route12 = new Route('/route12', array('var1' => 'val'), array(), array(), '{var1}.example.com'); - $collection1->add('route12', $route12); - - $route13 = new Route('/route13/{name}', array(), array(), array(), '{var1}.example.com'); - $collection1->add('route13', $route13); - - $route14 = new Route('/route14/{name}', array('var1' => 'val'), array(), array(), '{var1}.example.com'); - $collection1->add('route14', $route14); - - $route15 = new Route('/route15/{name}', array(), array(), array(), 'c.example.com'); - $collection1->add('route15', $route15); - - $route16 = new Route('/route16/{name}', array('var1' => 'val'), array(), array(), null); - $collection1->add('route16', $route16); - - $route17 = new Route('/route17', array(), array(), array(), null); - $collection1->add('route17', $route17); - - $collection->addCollection($collection1); - - // multiple sub-collections with a single route and a prefix each - $collection1 = new RouteCollection(); - $collection1->add('a', new Route('/a...')); - $collection2 = new RouteCollection(); - $collection2->add('b', new Route('/{var}')); - $collection3 = new RouteCollection(); - $collection3->add('c', new Route('/{var}')); - $collection3->addPrefix('/c'); - $collection2->addCollection($collection3); - $collection2->addPrefix('/b'); - $collection1->addCollection($collection2); - $collection1->addPrefix('/a'); - $collection->addCollection($collection1); - - /* test case 2 */ - - $redirectCollection = clone $collection; - - // force HTTPS redirection - $redirectCollection->add('secure', new Route( - '/secure', - array(), - array('_scheme' => 'https') - )); - - // force HTTP redirection - $redirectCollection->add('nonsecure', new Route( - '/nonsecure', - array(), - array('_scheme' => 'http') - )); - - /* test case 3 */ - - $rootprefixCollection = new RouteCollection(); - $rootprefixCollection->add('static', new Route('/test')); - $rootprefixCollection->add('dynamic', new Route('/{var}')); - $rootprefixCollection->addPrefix('rootprefix'); - - return array( - array($collection, 'url_matcher1.php', array()), - array($redirectCollection, 'url_matcher2.php', array('base_class' => 'Symfony\Component\Routing\Tests\Fixtures\RedirectableUrlMatcher')), - array($rootprefixCollection, 'url_matcher3.php', array()) - ); - } -} diff --git a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/RedirectableUrlMatcherTest.php b/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/RedirectableUrlMatcherTest.php deleted file mode 100644 index 2ad4fc87..00000000 --- a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/RedirectableUrlMatcherTest.php +++ /dev/null @@ -1,58 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Routing\Tests\Matcher; - -use Symfony\Component\Routing\Route; -use Symfony\Component\Routing\RouteCollection; -use Symfony\Component\Routing\RequestContext; - -class RedirectableUrlMatcherTest extends \PHPUnit_Framework_TestCase -{ - public function testRedirectWhenNoSlash() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo/')); - - $matcher = $this->getMockForAbstractClass('Symfony\Component\Routing\Matcher\RedirectableUrlMatcher', array($coll, new RequestContext())); - $matcher->expects($this->once())->method('redirect'); - $matcher->match('/foo'); - } - - /** - * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException - */ - public function testRedirectWhenNoSlashForNonSafeMethod() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo/')); - - $context = new RequestContext(); - $context->setMethod('POST'); - $matcher = $this->getMockForAbstractClass('Symfony\Component\Routing\Matcher\RedirectableUrlMatcher', array($coll, $context)); - $matcher->match('/foo'); - } - - public function testSchemeRedirect() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo', array(), array('_scheme' => 'https'))); - - $matcher = $this->getMockForAbstractClass('Symfony\Component\Routing\Matcher\RedirectableUrlMatcher', array($coll, new RequestContext())); - $matcher - ->expects($this->once()) - ->method('redirect') - ->with('/foo', 'foo', 'https') - ->will($this->returnValue(array('_route' => 'foo'))) - ; - $matcher->match('/foo'); - } -} diff --git a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/TraceableUrlMatcherTest.php b/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/TraceableUrlMatcherTest.php deleted file mode 100644 index 86d8d954..00000000 --- a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/TraceableUrlMatcherTest.php +++ /dev/null @@ -1,66 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Routing\Tests\Matcher; - -use Symfony\Component\Routing\Route; -use Symfony\Component\Routing\RouteCollection; -use Symfony\Component\Routing\RequestContext; -use Symfony\Component\Routing\Matcher\TraceableUrlMatcher; - -class TraceableUrlMatcherTest extends \PHPUnit_Framework_TestCase -{ - public function test() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo', array(), array('_method' => 'POST'))); - $coll->add('bar', new Route('/bar/{id}', array(), array('id' => '\d+'))); - $coll->add('bar1', new Route('/bar/{name}', array(), array('id' => '\w+', '_method' => 'POST'))); - $coll->add('bar2', new Route('/foo', array(), array(), array(), 'baz')); - $coll->add('bar3', new Route('/foo1', array(), array(), array(), 'baz')); - - $context = new RequestContext(); - $context->setHost('baz'); - - $matcher = new TraceableUrlMatcher($coll, $context); - $traces = $matcher->getTraces('/babar'); - $this->assertEquals(array(0, 0, 0, 0, 0), $this->getLevels($traces)); - - $traces = $matcher->getTraces('/foo'); - $this->assertEquals(array(1, 0, 0, 2), $this->getLevels($traces)); - - $traces = $matcher->getTraces('/bar/12'); - $this->assertEquals(array(0, 2), $this->getLevels($traces)); - - $traces = $matcher->getTraces('/bar/dd'); - $this->assertEquals(array(0, 1, 1, 0, 0), $this->getLevels($traces)); - - $traces = $matcher->getTraces('/foo1'); - $this->assertEquals(array(0, 0, 0, 0, 2), $this->getLevels($traces)); - - $context->setMethod('POST'); - $traces = $matcher->getTraces('/foo'); - $this->assertEquals(array(2), $this->getLevels($traces)); - - $traces = $matcher->getTraces('/bar/dd'); - $this->assertEquals(array(0, 1, 2), $this->getLevels($traces)); - } - - public function getLevels($traces) - { - $levels = array(); - foreach ($traces as $trace) { - $levels[] = $trace['level']; - } - - return $levels; - } -} diff --git a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/UrlMatcherTest.php b/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/UrlMatcherTest.php deleted file mode 100644 index 8a1428f1..00000000 --- a/vendor/symfony/routing/Symfony/Component/Routing/Tests/Matcher/UrlMatcherTest.php +++ /dev/null @@ -1,383 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Symfony\Component\Routing\Tests\Matcher; - -use Symfony\Component\Routing\Exception\MethodNotAllowedException; -use Symfony\Component\Routing\Exception\ResourceNotFoundException; -use Symfony\Component\Routing\Matcher\UrlMatcher; -use Symfony\Component\Routing\Route; -use Symfony\Component\Routing\RouteCollection; -use Symfony\Component\Routing\RequestContext; - -class UrlMatcherTest extends \PHPUnit_Framework_TestCase -{ - public function testNoMethodSoAllowed() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo')); - - $matcher = new UrlMatcher($coll, new RequestContext()); - $matcher->match('/foo'); - } - - public function testMethodNotAllowed() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo', array(), array('_method' => 'post'))); - - $matcher = new UrlMatcher($coll, new RequestContext()); - - try { - $matcher->match('/foo'); - $this->fail(); - } catch (MethodNotAllowedException $e) { - $this->assertEquals(array('POST'), $e->getAllowedMethods()); - } - } - - public function testHeadAllowedWhenRequirementContainsGet() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo', array(), array('_method' => 'get'))); - - $matcher = new UrlMatcher($coll, new RequestContext('', 'head')); - $matcher->match('/foo'); - } - - public function testMethodNotAllowedAggregatesAllowedMethods() - { - $coll = new RouteCollection(); - $coll->add('foo1', new Route('/foo', array(), array('_method' => 'post'))); - $coll->add('foo2', new Route('/foo', array(), array('_method' => 'put|delete'))); - - $matcher = new UrlMatcher($coll, new RequestContext()); - - try { - $matcher->match('/foo'); - $this->fail(); - } catch (MethodNotAllowedException $e) { - $this->assertEquals(array('POST', 'PUT', 'DELETE'), $e->getAllowedMethods()); - } - } - - public function testMatch() - { - // test the patterns are matched and parameters are returned - $collection = new RouteCollection(); - $collection->add('foo', new Route('/foo/{bar}')); - $matcher = new UrlMatcher($collection, new RequestContext()); - try { - $matcher->match('/no-match'); - $this->fail(); - } catch (ResourceNotFoundException $e) {} - $this->assertEquals(array('_route' => 'foo', 'bar' => 'baz'), $matcher->match('/foo/baz')); - - // test that defaults are merged - $collection = new RouteCollection(); - $collection->add('foo', new Route('/foo/{bar}', array('def' => 'test'))); - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertEquals(array('_route' => 'foo', 'bar' => 'baz', 'def' => 'test'), $matcher->match('/foo/baz')); - - // test that route "method" is ignored if no method is given in the context - $collection = new RouteCollection(); - $collection->add('foo', new Route('/foo', array(), array('_method' => 'GET|head'))); - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertInternalType('array', $matcher->match('/foo')); - - // route does not match with POST method context - $matcher = new UrlMatcher($collection, new RequestContext('', 'post')); - try { - $matcher->match('/foo'); - $this->fail(); - } catch (MethodNotAllowedException $e) {} - - // route does match with GET or HEAD method context - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertInternalType('array', $matcher->match('/foo')); - $matcher = new UrlMatcher($collection, new RequestContext('', 'head')); - $this->assertInternalType('array', $matcher->match('/foo')); - - // route with an optional variable as the first segment - $collection = new RouteCollection(); - $collection->add('bar', new Route('/{bar}/foo', array('bar' => 'bar'), array('bar' => 'foo|bar'))); - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertEquals(array('_route' => 'bar', 'bar' => 'bar'), $matcher->match('/bar/foo')); - $this->assertEquals(array('_route' => 'bar', 'bar' => 'foo'), $matcher->match('/foo/foo')); - - $collection = new RouteCollection(); - $collection->add('bar', new Route('/{bar}', array('bar' => 'bar'), array('bar' => 'foo|bar'))); - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertEquals(array('_route' => 'bar', 'bar' => 'foo'), $matcher->match('/foo')); - $this->assertEquals(array('_route' => 'bar', 'bar' => 'bar'), $matcher->match('/')); - - // route with only optional variables - $collection = new RouteCollection(); - $collection->add('bar', new Route('/{foo}/{bar}', array('foo' => 'foo', 'bar' => 'bar'), array())); - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertEquals(array('_route' => 'bar', 'foo' => 'foo', 'bar' => 'bar'), $matcher->match('/')); - $this->assertEquals(array('_route' => 'bar', 'foo' => 'a', 'bar' => 'bar'), $matcher->match('/a')); - $this->assertEquals(array('_route' => 'bar', 'foo' => 'a', 'bar' => 'b'), $matcher->match('/a/b')); - } - - public function testMatchWithPrefixes() - { - $collection = new RouteCollection(); - $collection->add('foo', new Route('/{foo}')); - $collection->addPrefix('/b'); - $collection->addPrefix('/a'); - - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertEquals(array('_route' => 'foo', 'foo' => 'foo'), $matcher->match('/a/b/foo')); - } - - public function testMatchWithDynamicPrefix() - { - $collection = new RouteCollection(); - $collection->add('foo', new Route('/{foo}')); - $collection->addPrefix('/b'); - $collection->addPrefix('/{_locale}'); - - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertEquals(array('_locale' => 'fr', '_route' => 'foo', 'foo' => 'foo'), $matcher->match('/fr/b/foo')); - } - - public function testMatchSpecialRouteName() - { - $collection = new RouteCollection(); - $collection->add('$péß^a|', new Route('/bar')); - - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertEquals(array('_route' => '$péß^a|'), $matcher->match('/bar')); - } - - public function testMatchNonAlpha() - { - $collection = new RouteCollection(); - $chars = '!"$%éà &\'()*+,./:;<=>@ABCDEFGHIJKLMNOPQRSTUVWXYZ\\[]^_`abcdefghijklmnopqrstuvwxyz{|}~-'; - $collection->add('foo', new Route('/{foo}/bar', array(), array('foo' => '['.preg_quote($chars).']+'))); - - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertEquals(array('_route' => 'foo', 'foo' => $chars), $matcher->match('/'.rawurlencode($chars).'/bar')); - $this->assertEquals(array('_route' => 'foo', 'foo' => $chars), $matcher->match('/'.strtr($chars, array('%' => '%25')).'/bar')); - } - - public function testMatchWithDotMetacharacterInRequirements() - { - $collection = new RouteCollection(); - $collection->add('foo', new Route('/{foo}/bar', array(), array('foo' => '.+'))); - - $matcher = new UrlMatcher($collection, new RequestContext()); - $this->assertEquals(array('_route' => 'foo', 'foo' => "\n"), $matcher->match('/'.urlencode("\n").'/bar'), 'linefeed character is matched'); - } - - public function testMatchOverriddenRoute() - { - $collection = new RouteCollection(); - $collection->add('foo', new Route('/foo')); - - $collection1 = new RouteCollection(); - $collection1->add('foo', new Route('/foo1')); - - $collection->addCollection($collection1); - - $matcher = new UrlMatcher($collection, new RequestContext()); - - $this->assertEquals(array('_route' => 'foo'), $matcher->match('/foo1')); - $this->setExpectedException('Symfony\Component\Routing\Exception\ResourceNotFoundException'); - $this->assertEquals(array(), $matcher->match('/foo')); - } - - public function testMatchRegression() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo/{foo}')); - $coll->add('bar', new Route('/foo/bar/{foo}')); - - $matcher = new UrlMatcher($coll, new RequestContext()); - $this->assertEquals(array('foo' => 'bar', '_route' => 'bar'), $matcher->match('/foo/bar/bar')); - - $collection = new RouteCollection(); - $collection->add('foo', new Route('/{bar}')); - $matcher = new UrlMatcher($collection, new RequestContext()); - try { - $matcher->match('/'); - $this->fail(); - } catch (ResourceNotFoundException $e) { - } - } - - public function testDefaultRequirementForOptionalVariables() - { - $coll = new RouteCollection(); - $coll->add('test', new Route('/{page}.{_format}', array('page' => 'index', '_format' => 'html'))); - - $matcher = new UrlMatcher($coll, new RequestContext()); - $this->assertEquals(array('page' => 'my-page', '_format' => 'xml', '_route' => 'test'), $matcher->match('/my-page.xml')); - } - - public function testMatchingIsEager() - { - $coll = new RouteCollection(); - $coll->add('test', new Route('/{foo}-{bar}-', array(), array('foo' => '.+', 'bar' => '.+'))); - - $matcher = new UrlMatcher($coll, new RequestContext()); - $this->assertEquals(array('foo' => 'text1-text2-text3', 'bar' => 'text4', '_route' => 'test'), $matcher->match('/text1-text2-text3-text4-')); - } - - public function testAdjacentVariables() - { - $coll = new RouteCollection(); - $coll->add('test', new Route('/{w}{x}{y}{z}.{_format}', array('z' => 'default-z', '_format' => 'html'), array('y' => 'y|Y'))); - - $matcher = new UrlMatcher($coll, new RequestContext()); - // 'w' eagerly matches as much as possible and the other variables match the remaining chars. - // This also shows that the variables w-z must all exclude the separating char (the dot '.' in this case) by default requirement. - // Otherwise they would also consume '.xml' and _format would never match as it's an optional variable. - $this->assertEquals(array('w' => 'wwwww', 'x' => 'x', 'y' => 'Y', 'z' => 'Z','_format' => 'xml', '_route' => 'test'), $matcher->match('/wwwwwxYZ.xml')); - // As 'y' has custom requirement and can only be of value 'y|Y', it will leave 'ZZZ' to variable z. - // So with carefully chosen requirements adjacent variables, can be useful. - $this->assertEquals(array('w' => 'wwwww', 'x' => 'x', 'y' => 'y', 'z' => 'ZZZ','_format' => 'html', '_route' => 'test'), $matcher->match('/wwwwwxyZZZ')); - // z and _format are optional. - $this->assertEquals(array('w' => 'wwwww', 'x' => 'x', 'y' => 'y', 'z' => 'default-z','_format' => 'html', '_route' => 'test'), $matcher->match('/wwwwwxy')); - - $this->setExpectedException('Symfony\Component\Routing\Exception\ResourceNotFoundException'); - $matcher->match('/wxy.html'); - } - - public function testOptionalVariableWithNoRealSeparator() - { - $coll = new RouteCollection(); - $coll->add('test', new Route('/get{what}', array('what' => 'All'))); - $matcher = new UrlMatcher($coll, new RequestContext()); - - $this->assertEquals(array('what' => 'All', '_route' => 'test'), $matcher->match('/get')); - $this->assertEquals(array('what' => 'Sites', '_route' => 'test'), $matcher->match('/getSites')); - - // Usually the character in front of an optional parameter can be left out, e.g. with pattern '/get/{what}' just '/get' would match. - // But here the 't' in 'get' is not a separating character, so it makes no sense to match without it. - $this->setExpectedException('Symfony\Component\Routing\Exception\ResourceNotFoundException'); - $matcher->match('/ge'); - } - - public function testRequiredVariableWithNoRealSeparator() - { - $coll = new RouteCollection(); - $coll->add('test', new Route('/get{what}Suffix')); - $matcher = new UrlMatcher($coll, new RequestContext()); - - $this->assertEquals(array('what' => 'Sites', '_route' => 'test'), $matcher->match('/getSitesSuffix')); - } - - public function testDefaultRequirementOfVariable() - { - $coll = new RouteCollection(); - $coll->add('test', new Route('/{page}.{_format}')); - $matcher = new UrlMatcher($coll, new RequestContext()); - - $this->assertEquals(array('page' => 'index', '_format' => 'mobile.html', '_route' => 'test'), $matcher->match('/index.mobile.html')); - } - - /** - * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException - */ - public function testDefaultRequirementOfVariableDisallowsSlash() - { - $coll = new RouteCollection(); - $coll->add('test', new Route('/{page}.{_format}')); - $matcher = new UrlMatcher($coll, new RequestContext()); - - $matcher->match('/index.sl/ash'); - } - - /** - * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException - */ - public function testDefaultRequirementOfVariableDisallowsNextSeparator() - { - $coll = new RouteCollection(); - $coll->add('test', new Route('/{page}.{_format}', array(), array('_format' => 'html|xml'))); - $matcher = new UrlMatcher($coll, new RequestContext()); - - $matcher->match('/do.t.html'); - } - - /** - * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException - */ - public function testSchemeRequirement() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo', array(), array('_scheme' => 'https'))); - $matcher = new UrlMatcher($coll, new RequestContext()); - $matcher->match('/foo'); - } - - public function testDecodeOnce() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo/{foo}')); - - $matcher = new UrlMatcher($coll, new RequestContext()); - $this->assertEquals(array('foo' => 'bar%23', '_route' => 'foo'), $matcher->match('/foo/bar%2523')); - } - - public function testCannotRelyOnPrefix() - { - $coll = new RouteCollection(); - - $subColl = new RouteCollection(); - $subColl->add('bar', new Route('/bar')); - $subColl->addPrefix('/prefix'); - // overwrite the pattern, so the prefix is not valid anymore for this route in the collection - $subColl->get('bar')->setPattern('/new'); - - $coll->addCollection($subColl); - - $matcher = new UrlMatcher($coll, new RequestContext()); - $this->assertEquals(array('_route' => 'bar'), $matcher->match('/new')); - } - - public function testWithHost() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo/{foo}', array(), array(), array(), '{locale}.example.com')); - - $matcher = new UrlMatcher($coll, new RequestContext('', 'GET', 'en.example.com')); - $this->assertEquals(array('foo' => 'bar', '_route' => 'foo', 'locale' => 'en'), $matcher->match('/foo/bar')); - } - - public function testWithHostOnRouteCollection() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo/{foo}')); - $coll->add('bar', new Route('/bar/{foo}', array(), array(), array(), '{locale}.example.net')); - $coll->setHost('{locale}.example.com'); - - $matcher = new UrlMatcher($coll, new RequestContext('', 'GET', 'en.example.com')); - $this->assertEquals(array('foo' => 'bar', '_route' => 'foo', 'locale' => 'en'), $matcher->match('/foo/bar')); - - $matcher = new UrlMatcher($coll, new RequestContext('', 'GET', 'en.example.com')); - $this->assertEquals(array('foo' => 'bar', '_route' => 'bar', 'locale' => 'en'), $matcher->match('/bar/bar')); - } - - /** - * @expectedException \Symfony\Component\Routing\Exception\ResourceNotFoundException - */ - public function testWithOutHostHostDoesNotMatch() - { - $coll = new RouteCollection(); - $coll->add('foo', new Route('/foo/{foo}', array(), array(), array(), '{locale}.example.com')); - - $matcher = new UrlMatcher($coll, new RequestContext('', 'GET', 'example.com')); - $matcher->match('/foo/bar'); - } -} -- cgit v1.2.3