Phalcon\Test\Unit\Mvc\RouterTest::testMatchingWithTheRouterByUsingHttpMethods PHP Method

testMatchingWithTheRouterByUsingHttpMethods() public method

Tests router by using http method
Since: 2012-08-22
Author: Andy Gutierrez ([email protected])
    public function testMatchingWithTheRouterByUsingHttpMethods()
    {
        $this->specify('Router does not matched correctly by using http method', function ($method, $uri, $controller, $action, $params) {
            $router = $this->getRouter();
            $router->add('/docs/index', ['controller' => 'documentation2222', 'action' => 'index']);
            $router->addPost('/docs/index', ['controller' => 'documentation3', 'action' => 'index']);
            $router->addGet('/docs/index', ['controller' => 'documentation4', 'action' => 'index']);
            $router->addPut('/docs/index', ['controller' => 'documentation5', 'action' => 'index']);
            $router->addDelete('/docs/index', ['controller' => 'documentation6', 'action' => 'index']);
            $router->addOptions('/docs/index', ['controller' => 'documentation7', 'action' => 'index']);
            $router->addHead('/docs/index', ['controller' => 'documentation8', 'action' => 'index']);
            $router->addPurge('/docs/index', ['controller' => 'documentation9', 'action' => 'index']);
            $router->addTrace('/docs/index', ['controller' => 'documentation10', 'action' => 'index']);
            $router->addConnect('/docs/index', ['controller' => 'documentation11', 'action' => 'index']);
            $_SERVER['REQUEST_METHOD'] = $method;
            $router->handle($uri);
            expect($router->getControllerName())->equals($controller);
            expect($router->getActionName())->equals($action);
            expect($router->getParams())->equals($params);
        }, ['examples' => $this->methodProvider()]);
    }