SebastiaanLuca\Router\Tests\ExtendedRouterTest::testItAddsMiddlewareToANamedRouteUsingAWildcard PHP Method

testItAddsMiddlewareToANamedRouteUsingAWildcard() public method

    public function testItAddsMiddlewareToANamedRouteUsingAWildcard()
    {
        // Reverse instantation
        $route1 = $this->mock('mockedRoute');
        $route1->shouldReceive('getName')->andReturn('route.group');
        $route1->shouldReceive('middleware')->with(['middlewareA', 'middlewareB'])->once();
        $route2 = $this->mock('mockedRoute');
        $route2->shouldReceive('getName')->andReturn('route.group');
        $route2->shouldReceive('middleware')->with(['middlewareA', 'middlewareB'])->once();
        $route3 = $this->mock('mockedRoute');
        $route3->shouldReceive('getName')->andReturn('route3');
        $route3->shouldReceive('middleware')->never();
        // Route setup
        $routes = [$route1, $route2, $route3];
        // 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('route.*', ['middlewareA', 'middlewareB']);
    }