function CommentResourceTestBase::setUpAuthorization

Same name and namespace in other branches
  1. 9 core/modules/comment/tests/src/Functional/Rest/CommentResourceTestBase.php \Drupal\Tests\comment\Functional\Rest\CommentResourceTestBase::setUpAuthorization()
  2. 8.9.x core/modules/comment/tests/src/Functional/Rest/CommentResourceTestBase.php \Drupal\Tests\comment\Functional\Rest\CommentResourceTestBase::setUpAuthorization()
  3. 10 core/modules/comment/tests/src/Functional/Rest/CommentResourceTestBase.php \Drupal\Tests\comment\Functional\Rest\CommentResourceTestBase::setUpAuthorization()

Overrides ResourceTestBase::setUpAuthorization

2 calls to CommentResourceTestBase::setUpAuthorization()
CommentResourceTestBase::testPostDxWithoutCriticalBaseFields in core/modules/comment/tests/src/Functional/Rest/CommentResourceTestBase.php
Tests POSTing a comment without critical base fields.
CommentResourceTestBase::testPostSkipCommentApproval in core/modules/comment/tests/src/Functional/Rest/CommentResourceTestBase.php
Tests POSTing a comment with and without 'skip comment approval'.

File

core/modules/comment/tests/src/Functional/Rest/CommentResourceTestBase.php, line 56

Class

CommentResourceTestBase

Namespace

Drupal\Tests\comment\Functional\Rest

Code

protected function setUpAuthorization($method) {
    switch ($method) {
        case 'GET':
            $this->grantPermissionsToTestedRole([
                'access comments',
                'view test entity',
            ]);
            break;
        case 'POST':
            $this->grantPermissionsToTestedRole([
                'post comments',
            ]);
            break;
        case 'PATCH':
            // Anonymous users are not ever allowed to edit their own comments. To
            // be able to test PATCHing comments as the anonymous user, the more
            // permissive 'administer comments' permission must be granted.
            // @see \Drupal\comment\CommentAccessControlHandler::checkAccess
            if (static::$auth) {
                $this->grantPermissionsToTestedRole([
                    'edit own comments',
                ]);
            }
            else {
                $this->grantPermissionsToTestedRole([
                    'administer comments',
                ]);
            }
            break;
        case 'DELETE':
            $this->grantPermissionsToTestedRole([
                'administer comments',
            ]);
            break;
    }
}

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