/** * @param $url * @dataProvider outOfMatchUrlProvider * @expectedException \ReRoute\Exceptions\MatchNotFoundException */ public function testOutOfMatch($url) { $router = new Router(); $urlTemplate = new UrlTemplate(); $urlTemplate->setScheme('http')->setPathTemplate('/')->setHostTemplate('example.com'); $router->addRoute(new FinalRoute('homepageResult', $urlTemplate)); $router->doMatch(RequestContextFactory::createFromUrl($url)); }
/** * */ public function testIsMatched() { $urlTemplate = new UrlTemplate(['host' => 'example.com']); $this->assertTrue($urlTemplate->isMatched(RequestContextFactory::createFromUrl('http://example.com/', 'get'))); $urlTemplate->setScheme('https'); $this->assertFalse($urlTemplate->isMatched(RequestContextFactory::createFromUrl('http://example.com/', 'get'))); $this->assertTrue($urlTemplate->isMatched(RequestContextFactory::createFromUrl('https://example.com/category/123/', 'get'))); $urlTemplate->setPathTemplate('/category/{categoryId:[0-9]+:}/'); $this->assertFalse($urlTemplate->isMatched(RequestContextFactory::createFromUrl('https://example.com/', 'get'))); $this->assertTrue($urlTemplate->isMatched(RequestContextFactory::createFromUrl('https://example.com/category/123/', 'get'))); $urlTemplate->setMethod('post'); $this->assertFalse($urlTemplate->isMatched(RequestContextFactory::createFromUrl('https://example.com/', 'get'))); $this->assertTrue($urlTemplate->isMatched(RequestContextFactory::createFromUrl('https://example.com/category/123/', 'post'))); }