class RestResourceConfigResourceTestBase

Same name and namespace in other branches
  1. 11.x core/modules/rest/tests/src/Functional/Rest/RestResourceConfigResourceTestBase.php \Drupal\Tests\rest\Functional\Rest\RestResourceConfigResourceTestBase
  2. 10 core/modules/rest/tests/src/Functional/Rest/RestResourceConfigResourceTestBase.php \Drupal\Tests\rest\Functional\Rest\RestResourceConfigResourceTestBase
  3. 8.9.x core/modules/rest/tests/src/Functional/Rest/RestResourceConfigResourceTestBase.php \Drupal\Tests\rest\Functional\Rest\RestResourceConfigResourceTestBase
  4. 8.9.x core/modules/rest/tests/src/Functional/EntityResource/RestResourceConfig/RestResourceConfigResourceTestBase.php \Drupal\Tests\rest\Functional\EntityResource\RestResourceConfig\RestResourceConfigResourceTestBase

Hierarchy

Expanded class hierarchy of RestResourceConfigResourceTestBase

3 files declare their use of RestResourceConfigResourceTestBase
RestResourceConfigHalJsonAnonTest.php in core/modules/hal/tests/src/Functional/rest/RestResourceConfigHalJsonAnonTest.php
RestResourceConfigHalJsonBasicAuthTest.php in core/modules/hal/tests/src/Functional/rest/RestResourceConfigHalJsonBasicAuthTest.php
RestResourceConfigHalJsonCookieTest.php in core/modules/hal/tests/src/Functional/rest/RestResourceConfigHalJsonCookieTest.php

File

core/modules/rest/tests/src/Functional/Rest/RestResourceConfigResourceTestBase.php, line 8

Namespace

Drupal\Tests\rest\Functional\Rest
View source
abstract class RestResourceConfigResourceTestBase extends ConfigEntityResourceTestBase {
  
  /**
   * {@inheritdoc}
   */
  protected static $modules = [
    'dblog',
  ];
  
  /**
   * {@inheritdoc}
   */
  protected static $entityTypeId = 'rest_resource_config';
  
  /**
   * @var \Drupal\rest\RestResourceConfigInterface
   */
  protected $entity;
  
  /**
   * {@inheritdoc}
   */
  protected function setUpAuthorization($method) {
    $this->grantPermissionsToTestedRole([
      'administer rest resources',
    ]);
  }
  
  /**
   * {@inheritdoc}
   */
  protected function createEntity() {
    $rest_resource_config = RestResourceConfig::create([
      'id' => 'llama',
      'plugin_id' => 'dblog',
      'granularity' => 'method',
      'configuration' => [
        'GET' => [
          'supported_formats' => [
            'json',
          ],
          'supported_auth' => [
            'cookie',
          ],
        ],
      ],
    ]);
    $rest_resource_config->save();
    return $rest_resource_config;
  }
  
  /**
   * {@inheritdoc}
   */
  protected function getExpectedNormalizedEntity() {
    return [
      'uuid' => $this->entity
        ->uuid(),
      'langcode' => 'en',
      'status' => TRUE,
      'dependencies' => [
        'module' => [
          'dblog',
          'serialization',
          'user',
        ],
      ],
      'id' => 'llama',
      'plugin_id' => 'dblog',
      'granularity' => 'method',
      'configuration' => [
        'GET' => [
          'supported_formats' => [
            'json',
          ],
          'supported_auth' => [
            'cookie',
          ],
        ],
      ],
    ];
  }
  
  /**
   * {@inheritdoc}
   */
  protected function getNormalizedPostEntity() {
    // @todo Update in https://www.drupal.org/node/2300677.
    return [];
  }
  
  /**
   * {@inheritdoc}
   */
  protected function getExpectedCacheContexts() {
    return [
      'user.permissions',
    ];
  }

}

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