function ResourceTypeRepositoryTest::testResourceTypeDisabling

Same name and namespace in other branches
  1. 10 core/modules/jsonapi/tests/src/Kernel/ResourceType/ResourceTypeRepositoryTest.php \Drupal\Tests\jsonapi\Kernel\ResourceType\ResourceTypeRepositoryTest::testResourceTypeDisabling()
  2. 11.x core/modules/jsonapi/tests/src/Kernel/ResourceType/ResourceTypeRepositoryTest.php \Drupal\Tests\jsonapi\Kernel\ResourceType\ResourceTypeRepositoryTest::testResourceTypeDisabling()
  3. 9 core/modules/jsonapi/tests/src/Kernel/ResourceType/ResourceTypeRepositoryTest.php \Drupal\Tests\jsonapi\Kernel\ResourceType\ResourceTypeRepositoryTest::testResourceTypeDisabling()

Tests that resource types can be disabled by a build subscriber.

File

core/modules/jsonapi/tests/src/Kernel/ResourceType/ResourceTypeRepositoryTest.php, line 155

Class

ResourceTypeRepositoryTest
@coversDefaultClass \Drupal\jsonapi\ResourceType\ResourceTypeRepository[[api-linebreak]] @group jsonapi

Namespace

Drupal\Tests\jsonapi\Kernel\ResourceType

Code

public function testResourceTypeDisabling() {
  $this->assertFalse($this->resourceTypeRepository
    ->getByTypeName('node--article')
    ->isInternal());
  $this->assertFalse($this->resourceTypeRepository
    ->getByTypeName('node--page')
    ->isInternal());
  $this->assertFalse($this->resourceTypeRepository
    ->getByTypeName('user--user')
    ->isInternal());
  $disabled_resource_types = [
    'node--page',
    'user--user',
  ];
  \Drupal::state()->set('jsonapi_test_resource_type_builder.disabled_resource_types', $disabled_resource_types);
  Cache::invalidateTags([
    'jsonapi_resource_types',
  ]);
  $this->assertFalse($this->resourceTypeRepository
    ->getByTypeName('node--article')
    ->isInternal());
  $this->assertTrue($this->resourceTypeRepository
    ->getByTypeName('node--page')
    ->isInternal());
  $this->assertTrue($this->resourceTypeRepository
    ->getByTypeName('user--user')
    ->isInternal());
}

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