public function it_creates_a_new_collection_route(Route $route, EventDispatcherInterface $eventDispatcher, RouteInterface $parent) { $route->getType()->willReturn(RouteInterface::TYPE_COLLECTION); $route->getName()->willReturn('test-name'); $route->getTemplateName()->willReturn('index.html.twig'); $route->getParent()->willReturn($parent); $eventDispatcher->dispatch(RouteEvents::PRE_CREATE, Argument::type(RouteEvent::class))->shouldBeCalled(); $route->setVariablePattern(Argument::exact('/{slug}'))->shouldBeCalled(); $route->setRequirement(Argument::exact('slug'), Argument::exact('[a-zA-Z0-9*\\-_\\/]+'))->shouldBeCalled(); $route->setDefault('slug', null)->shouldBeCalled(); $route->setStaticPrefix('/test-name')->shouldBeCalled(); $eventDispatcher->dispatch(RouteEvents::POST_CREATE, Argument::type(RouteEvent::class))->shouldBeCalled(); $this->createRoute($route)->shouldReturn($route); }