function RoutePreloaderTest::testOnAlterRoutesWithAdminPathNoAdminRoute

Same name and namespace in other branches
  1. 9 core/tests/Drupal/Tests/Core/Routing/RoutePreloaderTest.php \Drupal\Tests\Core\Routing\RoutePreloaderTest::testOnAlterRoutesWithAdminPathNoAdminRoute()
  2. 8.9.x core/tests/Drupal/Tests/Core/Routing/RoutePreloaderTest.php \Drupal\Tests\Core\Routing\RoutePreloaderTest::testOnAlterRoutesWithAdminPathNoAdminRoute()
  3. 11.x core/tests/Drupal/Tests/Core/Routing/RoutePreloaderTest.php \Drupal\Tests\Core\Routing\RoutePreloaderTest::testOnAlterRoutesWithAdminPathNoAdminRoute()

Tests onAlterRoutes with "admin" appearing in the path.

File

core/tests/Drupal/Tests/Core/Routing/RoutePreloaderTest.php, line 76

Class

RoutePreloaderTest
@coversDefaultClass \Drupal\Core\Routing\RoutePreloader[[api-linebreak]] @group Routing

Namespace

Drupal\Tests\Core\Routing

Code

public function testOnAlterRoutesWithAdminPathNoAdminRoute() : void {
  $event = $this->getMockBuilder('Drupal\\Core\\Routing\\RouteBuildEvent')
    ->disableOriginalConstructor()
    ->getMock();
  $route_collection = new RouteCollection();
  $route_collection->add('test', new Route('/foo/admin/foo', [
    '_controller' => 'Drupal\\ExampleController',
  ]));
  $route_collection->add('test2', new Route('/bar/admin/bar', [
    '_controller' => 'Drupal\\ExampleController',
  ]));
  $route_collection->add('test3', new Route('/administrator/a', [
    '_controller' => 'Drupal\\ExampleController',
  ]));
  $route_collection->add('test4', new Route('/admin', [
    '_controller' => 'Drupal\\ExampleController',
  ]));
  $event->expects($this->once())
    ->method('getRouteCollection')
    ->willReturn($route_collection);
  $this->state
    ->expects($this->once())
    ->method('set')
    ->with('routing.non_admin_routes', [
    'test',
    'test2',
    'test3',
  ]);
  $this->preloader
    ->onAlterRoutes($event);
  $this->preloader
    ->onFinishedRoutes(new Event());
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.