class PathRootsSubscriberTest in Drupal 8
Same name and namespace in other branches
- 9 core/tests/Drupal/Tests/Core/EventSubscriber/PathRootsSubscriberTest.php \Drupal\Tests\Core\EventSubscriber\PathRootsSubscriberTest
- 10 core/tests/Drupal/Tests/Core/EventSubscriber/PathRootsSubscriberTest.php \Drupal\Tests\Core\EventSubscriber\PathRootsSubscriberTest
@coversDefaultClass \Drupal\Core\EventSubscriber\PathRootsSubscriber @group EventSubscriber
Hierarchy
- class \Drupal\Tests\UnitTestCase extends \PHPUnit\Framework\TestCase uses PhpunitCompatibilityTrait- class \Drupal\Tests\Core\EventSubscriber\PathRootsSubscriberTest
 
Expanded class hierarchy of PathRootsSubscriberTest
File
- core/tests/ Drupal/ Tests/ Core/ EventSubscriber/ PathRootsSubscriberTest.php, line 15 
Namespace
Drupal\Tests\Core\EventSubscriberView source
class PathRootsSubscriberTest extends UnitTestCase {
  /**
   * The mocked state.
   *
   * @var \Drupal\Core\State\StateInterface|\PHPUnit\Framework\MockObject\MockObject
   */
  protected $state;
  /**
   * The tested path root subscriber.
   *
   * @var \Drupal\Core\EventSubscriber\PathRootsSubscriber
   */
  protected $pathRootsSubscriber;
  /**
   * {@inheritdoc}
   */
  protected function setUp() {
    $this->state = $this
      ->createMock('Drupal\\Core\\State\\StateInterface');
    $this->pathRootsSubscriber = new PathRootsSubscriber($this->state);
  }
  /**
   * Tests altering and finished event.
   *
   * @covers ::onRouteAlter
   * @covers ::onRouteFinished
   */
  public function testSubscribing() {
    // Ensure that onRouteFinished can be called without throwing notices
    // when no path roots got set.
    $this->pathRootsSubscriber
      ->onRouteFinished();
    $route_collection = new RouteCollection();
    $route_collection
      ->add('test_route1', new Route('/test/bar'));
    $route_collection
      ->add('test_route2', new Route('/test/baz'));
    $route_collection
      ->add('test_route3', new Route('/test2/bar/baz'));
    $event = new RouteBuildEvent($route_collection, 'provider');
    $this->pathRootsSubscriber
      ->onRouteAlter($event);
    $route_collection = new RouteCollection();
    $route_collection
      ->add('test_route4', new Route('/test1/bar'));
    $route_collection
      ->add('test_route5', new Route('/test2/baz'));
    $route_collection
      ->add('test_route6', new Route('/test2/bar/baz'));
    $event = new RouteBuildEvent($route_collection, 'provider');
    $this->pathRootsSubscriber
      ->onRouteAlter($event);
    $this->state
      ->expects($this
      ->once())
      ->method('set')
      ->with('router.path_roots', [
      'test',
      'test2',
      'test1',
    ]);
    $this->pathRootsSubscriber
      ->onRouteFinished();
  }
}Members
| Name   | Modifiers | Type | Description | Overrides | 
|---|---|---|---|---|
| PathRootsSubscriberTest:: | protected | property | The tested path root subscriber. | |
| PathRootsSubscriberTest:: | protected | property | The mocked state. | |
| PathRootsSubscriberTest:: | protected | function | Overrides UnitTestCase:: | |
| PathRootsSubscriberTest:: | public | function | Tests altering and finished event. | |
| PhpunitCompatibilityTrait:: | public | function | Returns a mock object for the specified class using the available method. | |
| PhpunitCompatibilityTrait:: | public | function | Compatibility layer for PHPUnit 6 to support PHPUnit 4 code. | |
| UnitTestCase:: | protected | property | The random generator. | |
| UnitTestCase:: | protected | property | The app root. | 1 | 
| UnitTestCase:: | protected | function | Asserts if two arrays are equal by sorting them first. | |
| UnitTestCase:: | protected | function | Mocks a block with a block plugin. | 1 | 
| UnitTestCase:: | protected | function | Returns a stub class resolver. | |
| UnitTestCase:: | public | function | Returns a stub config factory that behaves according to the passed array. | |
| UnitTestCase:: | public | function | Returns a stub config storage that returns the supplied configuration. | |
| UnitTestCase:: | protected | function | Sets up a container with a cache tags invalidator. | |
| UnitTestCase:: | protected | function | Gets the random generator for the utility methods. | |
| UnitTestCase:: | public | function | Returns a stub translation manager that just returns the passed string. | |
| UnitTestCase:: | public | function | Generates a unique random string containing letters and numbers. | 
