public function PanelsEverywhereRouteSubscriberTest::testSubscriberDoesNothingForNoVariantsOnPageEntity in Panels Everywhere 8.4
Tests onAlterRoutes.
Specifically that PanelsEverywhereRouteSubscriber does nothing if there are no variants on page entity.
File
- tests/
src/ Unit/ Routing/ PanelsEverywhereRouteSubscriberTest.php, line 89
Class
- PanelsEverywhereRouteSubscriberTest
- @coversDefaultClass \Drupal\panels_everywhere\Routing\PanelsEverywhereRouteSubscriber @group panels_everywhere
Namespace
Drupal\Tests\panels_everywhere\Unit\RoutingCode
public function testSubscriberDoesNothingForNoVariantsOnPageEntity() {
// Given.
$pageEntity = $this
->prophesize(PageInterface::class);
$pageEntity
->status()
->willReturn(TRUE);
$pageEntity
->getVariants()
->willReturn([]);
$pageStorage = $this
->prophesize(EntityStorageInterface::class);
$pageStorage
->loadMultiple()
->willReturn([
$pageEntity
->reveal(),
]);
$entityTypeManager = $this
->prophesize(EntityTypeManagerInterface::class);
$entityTypeManager
->getStorage('page')
->willReturn($pageStorage
->reveal());
$cacheTagsInvalidator = $this
->prophesize(CacheTagsInvalidatorInterface::class);
$routeCollection = new RouteCollection();
$event = new RouteBuildEvent($routeCollection);
// When.
$subscriber = new PanelsEverywhereRouteSubscriber($entityTypeManager
->reveal(), $cacheTagsInvalidator
->reveal());
$subscriber
->onAlterRoutes($event);
// Then.
self::assertEmpty($routeCollection
->all());
}