You are here

protected function AdministerusersbyroleTest::createRolesAndUsers in Administer Users by Role 8.3

Same name and namespace in other branches
  1. 8.2 tests/src/Functional/AdministerusersbyroleTest.php \Drupal\Tests\administerusersbyrole\Functional\AdministerusersbyroleTest::createRolesAndUsers()

Creates and role, a user with that roles and a user that can edit the role.

1 call to AdministerusersbyroleTest::createRolesAndUsers()
AdministerusersbyroleTest::setUp in tests/src/Functional/AdministerusersbyroleTest.php

File

tests/src/Functional/AdministerusersbyroleTest.php, line 313

Class

AdministerusersbyroleTest
Testing for administerusersbyrole module.

Namespace

Drupal\Tests\administerusersbyrole\Functional

Code

protected function createRolesAndUsers($roleName, $allowEditorToCancel) {

  // Create basic role.
  $this
    ->drupalCreateRole([
    'access content',
  ], $roleName);
  $this->config
    ->set("roles.{$roleName}", 'perm')
    ->save();
  $this
    ->createUserWithRole($roleName, [
    $roleName,
  ]);

  // Create role to edit above role and also anyone with no custom roles.
  $perms = [
    'access content',
    $this->accessManager
      ->buildPermString('edit'),
    $this->accessManager
      ->buildPermString('edit', $roleName),
  ];
  if ($allowEditorToCancel) {
    $perms[] = $this->accessManager
      ->buildPermString('cancel');
    $perms[] = $this->accessManager
      ->buildPermString('cancel', $roleName);
  }
  $this
    ->drupalCreateRole($perms, "{$roleName}_editor");
  $this->config
    ->set("roles.{$roleName}_editor", 'perm')
    ->save();
  $this
    ->createUserWithRole("{$roleName}_editor", [
    "{$roleName}_editor",
  ]);
}