function EntityResourceTestBase::getExpectedUnauthorizedAccessMessage

Same name and namespace in other branches
  1. 11.x core/modules/rest/tests/src/Functional/EntityResource/EntityResourceTestBase.php \Drupal\Tests\rest\Functional\EntityResource\EntityResourceTestBase::getExpectedUnauthorizedAccessMessage()
  2. 10 core/modules/rest/tests/src/Functional/EntityResource/EntityResourceTestBase.php \Drupal\Tests\rest\Functional\EntityResource\EntityResourceTestBase::getExpectedUnauthorizedAccessMessage()
  3. 8.9.x core/modules/rest/tests/src/Functional/EntityResource/EntityResourceTestBase.php \Drupal\Tests\rest\Functional\EntityResource\EntityResourceTestBase::getExpectedUnauthorizedAccessMessage()
3 methods override EntityResourceTestBase::getExpectedUnauthorizedAccessMessage()
CommentResourceTestBase::getExpectedUnauthorizedAccessMessage in core/modules/comment/tests/src/Functional/Rest/CommentResourceTestBase.php
Return the expected error message.
FileResourceTestBase::getExpectedUnauthorizedAccessMessage in core/modules/file/tests/src/Functional/Rest/FileResourceTestBase.php
Return the expected error message.
SearchPageResourceTestBase::getExpectedUnauthorizedAccessMessage in core/modules/search/tests/src/Functional/Rest/SearchPageResourceTestBase.php
Return the expected error message.

File

core/modules/rest/tests/src/Functional/EntityResource/EntityResourceTestBase.php, line 326

Class

EntityResourceTestBase
Defines a base class for testing all entity resources.

Namespace

Drupal\Tests\rest\Functional\EntityResource

Code

protected function getExpectedUnauthorizedAccessMessage($method) {
  $permission = $this->entity
    ->getEntityType()
    ->getAdminPermission();
  if ($permission !== FALSE) {
    return "The '{$permission}' permission is required.";
  }
  $http_method_to_entity_operation = [
    'GET' => 'view',
    'POST' => 'create',
    'PATCH' => 'update',
    'DELETE' => 'delete',
  ];
  $operation = $http_method_to_entity_operation[$method];
  $message = sprintf('You are not authorized to %s this %s entity', $operation, $this->entity
    ->getEntityTypeId());
  if ($this->entity
    ->bundle() !== $this->entity
    ->getEntityTypeId()) {
    $message .= ' of bundle ' . $this->entity
      ->bundle();
  }
  return "{$message}.";
}

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