You are here

public function ConfigDependenciesTest::providerOnDependencyRemovalForResourceGranularity in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/rest/tests/src/Kernel/Entity/ConfigDependenciesTest.php \Drupal\Tests\rest\Kernel\Entity\ConfigDependenciesTest::providerOnDependencyRemovalForResourceGranularity()
  2. 10 core/modules/rest/tests/src/Kernel/Entity/ConfigDependenciesTest.php \Drupal\Tests\rest\Kernel\Entity\ConfigDependenciesTest::providerOnDependencyRemovalForResourceGranularity()

Return value

array An array with numerical keys: 0. The original REST resource configuration. 1. The module to uninstall (the dependency that is about to be removed). 2. The expected configuration after uninstalling this module.

File

core/modules/rest/tests/src/Kernel/Entity/ConfigDependenciesTest.php, line 225

Class

ConfigDependenciesTest
@coversDefaultClass \Drupal\rest\Entity\ConfigDependencies

Namespace

Drupal\Tests\rest\Kernel\Entity

Code

public function providerOnDependencyRemovalForResourceGranularity() {
  return [
    'resource with multiple formats' => [
      [
        'plugin_id' => 'entity:entity_test',
        'granularity' => RestResourceConfigInterface::RESOURCE_GRANULARITY,
        'configuration' => [
          'methods' => [
            'GET',
            'POST',
          ],
          'formats' => [
            'json',
            'hal_json',
          ],
          'authentication' => [
            'cookie',
            'basic_auth',
          ],
        ],
      ],
      'hal',
      [
        'methods' => [
          'GET',
          'POST',
        ],
        'formats' => [
          'json',
        ],
        'authentication' => [
          'cookie',
          'basic_auth',
        ],
      ],
    ],
    'resource with only HAL+JSON format' => [
      [
        'plugin_id' => 'entity:entity_test',
        'granularity' => RestResourceConfigInterface::RESOURCE_GRANULARITY,
        'configuration' => [
          'methods' => [
            'GET',
            'POST',
          ],
          'formats' => [
            'hal_json',
          ],
          'authentication' => [
            'cookie',
            'basic_auth',
          ],
        ],
      ],
      'hal',
      FALSE,
    ],
    'resource with multiple authentication providers' => [
      [
        'plugin_id' => 'entity:entity_test',
        'granularity' => RestResourceConfigInterface::RESOURCE_GRANULARITY,
        'configuration' => [
          'methods' => [
            'GET',
            'POST',
          ],
          'formats' => [
            'json',
            'hal_json',
          ],
          'authentication' => [
            'cookie',
            'basic_auth',
          ],
        ],
      ],
      'basic_auth',
      [
        'methods' => [
          'GET',
          'POST',
        ],
        'formats' => [
          'json',
          'hal_json',
        ],
        'authentication' => [
          'cookie',
        ],
      ],
    ],
    'resource with only basic_auth authentication' => [
      [
        'plugin_id' => 'entity:entity_test',
        'granularity' => RestResourceConfigInterface::RESOURCE_GRANULARITY,
        'configuration' => [
          'methods' => [
            'GET',
            'POST',
          ],
          'formats' => [
            'json',
            'hal_json',
          ],
          'authentication' => [
            'basic_auth',
          ],
        ],
      ],
      'basic_auth',
      FALSE,
    ],
  ];
}