public function AccessManagerTest::testSetChecks

Tests \Drupal\Core\Access\AccessManager::setChecks().

File

drupal/core/tests/Drupal/Tests/Core/Access/AccessManagerTest.php, line 75
Contains \Drupal\Tests\Core\Access\AccessManagerTest.

Class

AccessManagerTest
Tests the access manager.

Namespace

Drupal\Tests\Core\Access

Code

public function testSetChecks() {

  // Check setChecks without any access checker defined yet.
  $this->accessManager
    ->setChecks($this->routeCollection);
  foreach ($this->routeCollection
    ->all() as $route) {
    $this
      ->assertNull($route
      ->getOption('_access_checks'));
  }
  $this
    ->setupAccessChecker();
  $this->accessManager
    ->setChecks($this->routeCollection);
  $this
    ->assertEquals($this->routeCollection
    ->get('test_route_1')
    ->getOption('_access_checks'), NULL);
  $this
    ->assertEquals($this->routeCollection
    ->get('test_route_2')
    ->getOption('_access_checks'), array(
    'test_access_default',
  ));
  $this
    ->assertEquals($this->routeCollection
    ->get('test_route_3')
    ->getOption('_access_checks'), array(
    'test_access_default',
  ));
}