public function WorkflowAccessControlHandlerTest::testCheckCreateAccess in Drupal 9
Same name and namespace in other branches
- 8 core/modules/workflows/tests/src/Kernel/WorkflowAccessControlHandlerTest.php \Drupal\Tests\workflows\Kernel\WorkflowAccessControlHandlerTest::testCheckCreateAccess()
 
@covers ::checkCreateAccess
File
- core/
modules/ workflows/ tests/ src/ Kernel/ WorkflowAccessControlHandlerTest.php, line 73  
Class
- WorkflowAccessControlHandlerTest
 - @coversDefaultClass \Drupal\workflows\WorkflowAccessControlHandler @group workflows
 
Namespace
Drupal\Tests\workflows\KernelCode
public function testCheckCreateAccess() {
  // A user must have the correct permission to create a workflow.
  $this
    ->assertEquals(AccessResult::neutral()
    ->addCacheContexts([
    'user.permissions',
  ])
    ->setReason("The 'administer workflows' permission is required.")
    ->addCacheTags([
    'workflow_type_plugins',
  ]), $this->accessControlHandler
    ->createAccess(NULL, $this->user, [], TRUE));
  $this
    ->assertEquals(AccessResult::allowed()
    ->addCacheContexts([
    'user.permissions',
  ])
    ->addCacheTags([
    'workflow_type_plugins',
  ]), $this->accessControlHandler
    ->createAccess(NULL, $this->adminUser, [], TRUE));
  // Remove all plugin types and ensure not even the admin user is allowed to
  // create a workflow.
  workflow_type_test_set_definitions([]);
  $this->accessControlHandler
    ->resetCache();
  $this
    ->assertEquals(AccessResult::neutral()
    ->addCacheContexts([
    'user.permissions',
  ])
    ->addCacheTags([
    'workflow_type_plugins',
  ]), $this->accessControlHandler
    ->createAccess(NULL, $this->adminUser, [], TRUE));
}