/** * Returns the regex needed to match the route. * * @access public * @return string */ public function compileRegex() { $route = $this->route->getUri(); if (strpos($route, '?')) { $route = preg_replace('@\\/{([\\w]+)\\?}@', '(?:/{$1})?', $route); } $route = preg_replace('/{([a-z0-9_-]+)}/i', '(?P<$1>[^/]+)', $route); if (substr($route, -1) === '/') { $route .= '?'; } return "%^{$route}\$%s"; }
/** * @expectedException InvalidArgumentException */ public function testBadControllerRoute() { $route = new Route('/', 'index', 'FakeController@indexAction'); $route->getAction(); }