SebastiaanLuca\Router\Tests\ExtendedRouterTest::testItAddsMiddlewareToANamedRoute PHP Метод

testItAddsMiddlewareToANamedRoute() публичный Метод

    public function testItAddsMiddlewareToANamedRoute()
    {
        // Reverse instantation
        // 'mockedRoute' instead of just 'route' to prevent double-declaration of Route facade.
        // Somehow it keeps nagging about that.
        $route1 = $this->mock('mockedRoute');
        $route1->shouldReceive('getName')->andReturn('route1');
        $route1->shouldReceive('middleware')->with(['middlewareA', 'middlewareB'])->once();
        $route2 = $this->mock('mockedRoute');
        $route2->shouldReceive('getName')->andReturn('route2');
        $route2->shouldReceive('middleware')->never();
        // Route setup
        $routes = [$route1, $route2];
        // Intermediate route collection setup
        $collection = $this->mock('collection');
        $collection->shouldReceive('getIterator')->andReturn($routes);
        $router = $this->createExtendedRouter();
        $router->shouldReceive('getRoutes')->andReturn($collection);
        // Use the real method instead of mocking it
        $router->shouldReceive('addMiddlewareToRoute')->passthru();
        $router->addMiddlewareToRoute('route1', ['middlewareA', 'middlewareB']);
    }