AccessTestBase.php

Same filename and directory in other branches
  1. 9 core/modules/user/tests/src/Functional/Views/AccessTestBase.php
  2. 8.9.x core/modules/user/tests/src/Functional/Views/AccessTestBase.php
  3. 11.x core/modules/user/tests/src/Functional/Views/AccessTestBase.php

Namespace

Drupal\Tests\user\Functional\Views

File

core/modules/user/tests/src/Functional/Views/AccessTestBase.php

View source
<?php

declare (strict_types=1);
namespace Drupal\Tests\user\Functional\Views;


/**
 * A common test base class for the user access plugin tests.
 */
abstract class AccessTestBase extends UserTestBase {
  
  /**
   * {@inheritdoc}
   */
  protected static $modules = [
    'block',
  ];
  
  /**
   * Contains a user object that has no special permissions.
   *
   * @var \Drupal\user\UserInterface
   */
  protected $webUser;
  
  /**
   * Contains a user object that has the 'views_test_data test permission'.
   *
   * @var \Drupal\user\UserInterface
   */
  protected $normalUser;
  
  /**
   * Contains a role ID that is used by the webUser.
   *
   * @var string
   */
  protected $webRole;
  
  /**
   * Contains a role ID that is used by the normalUser.
   *
   * @var string
   */
  protected $normalRole;
  
  /**
   * {@inheritdoc}
   */
  protected function setUp($import_test_views = TRUE, $modules = []) : void {
    parent::setUp($import_test_views, $modules);
    $this->drupalPlaceBlock('system_breadcrumb_block');
    $this->enableViewsTestModule();
    $this->webUser = $this->drupalCreateUser();
    $roles = $this->webUser
      ->getRoles();
    $this->webRole = $roles[0];
    $this->normalRole = $this->drupalCreateRole([]);
    $this->normalUser = $this->drupalCreateUser([
      'views_test_data test permission',
    ]);
    $this->normalUser
      ->addRole($this->normalRole)
      ->save();
    // @todo when all the plugin information is cached make a reset function and
    // call it here.
  }

}

Classes

Title Deprecated Summary
AccessTestBase A common test base class for the user access plugin tests.

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