Neos\Flow\Tests\Functional\Mvc\RoutingTest::routeTests PHP Method

routeTests() public method

public routeTests ( string $requestUri, string $expectedMatchingRouteName, string $expectedControllerObjectName = null, array $expectedArguments = null )
$requestUri string request URI
$expectedMatchingRouteName string expected route
$expectedControllerObjectName string expected controller object name
$expectedArguments array expected request arguments after routing or NULL if this should not be checked
    public function routeTests($requestUri, $expectedMatchingRouteName, $expectedControllerObjectName = null, array $expectedArguments = null)
    {
        $request = Request::create(new Uri($requestUri));
        $matchResults = $this->router->route($request);
        $actionRequest = $this->createActionRequest($request, $matchResults);
        $matchedRoute = $this->router->getLastMatchedRoute();
        if ($expectedMatchingRouteName === null) {
            if ($matchedRoute !== null) {
                $this->fail('Expected no route to match URI "' . $requestUri . '" but route "' . $matchedRoute->getName() . '" matched');
            }
        } else {
            if ($matchedRoute === null) {
                $this->fail('Expected route "' . $expectedMatchingRouteName . '" to match, but no route matched request URI "' . $requestUri . '"');
            } else {
                $this->assertEquals('Flow :: Functional Test: ' . $expectedMatchingRouteName, $matchedRoute->getName());
            }
        }
        $this->assertEquals($expectedControllerObjectName, $actionRequest->getControllerObjectName());
        if ($expectedArguments !== null) {
            $this->assertEquals($expectedArguments, $actionRequest->getArguments());
        }
    }