public function testSuffix()
 {
     $routeMatch = new RoutingResult(true, array());
     $resolver = new TemplatePathResolver();
     $resolver->setSuffix('.unkown');
     $routeMatch->setMatchedRouteName('/test');
     $this->assertSame('/test.unkown', $resolver->resolve($routeMatch));
 }
Пример #2
0
 /**
  * @param mixed $route
  * @param Request $request
  * @return RoutingResult
  */
 protected function dispatchRouting($route, Request $request)
 {
     if (is_callable($route)) {
         $routingReturn = call_user_func($route, $request);
     } else {
         $routingReturn = $this->dispatchRoutingByType($route, $request);
     }
     if ($routingReturn !== false) {
         if ($routingReturn === true) {
             $routingResult = new RoutingResult(true, array());
             $routingResult->setMatchedRouteName($request->getUri()->getPath());
         } elseif (is_array($routingReturn)) {
             $params = $routingReturn;
             $routingResult = new RoutingResult(true, $params);
             $routingResult->setMatchedRouteName($request->getUri()->getPath());
         } elseif ($routingReturn instanceof RoutingResult) {
             return $routingReturn;
         } else {
             throw new \UnexpectedvalueException('Invalid router type is passed');
         }
     } else {
         $routingResult = new RoutingResult(false, []);
     }
     return $routingResult;
 }