You are here

protected function FieldStorageConfigAccessControlHandlerTest::setUp in Drupal 10

Same name and namespace in other branches
  1. 8 core/modules/field/tests/src/Unit/FieldStorageConfigAccessControlHandlerTest.php \Drupal\Tests\field\Unit\FieldStorageConfigAccessControlHandlerTest::setUp()
  2. 9 core/modules/field/tests/src/Unit/FieldStorageConfigAccessControlHandlerTest.php \Drupal\Tests\field\Unit\FieldStorageConfigAccessControlHandlerTest::setUp()

File

core/modules/field/tests/src/Unit/FieldStorageConfigAccessControlHandlerTest.php, line 64

Class

FieldStorageConfigAccessControlHandlerTest
Tests the field storage config access controller.

Namespace

Drupal\Tests\field\Unit

Code

protected function setUp() : void {
  parent::setUp();
  $this->anon = $this
    ->createMock(AccountInterface::class);
  $this->anon
    ->expects($this
    ->any())
    ->method('hasPermission')
    ->will($this
    ->returnValue(FALSE));
  $this->anon
    ->expects($this
    ->any())
    ->method('id')
    ->will($this
    ->returnValue(0));
  $this->member = $this
    ->createMock(AccountInterface::class);
  $this->member
    ->expects($this
    ->any())
    ->method('hasPermission')
    ->willReturnMap([
    [
      'administer node fields',
      TRUE,
    ],
  ]);
  $this->member
    ->expects($this
    ->any())
    ->method('id')
    ->will($this
    ->returnValue(2));
  $storageType = $this
    ->createMock(ConfigEntityTypeInterface::class);
  $storageType
    ->expects($this
    ->any())
    ->method('getProvider')
    ->will($this
    ->returnValue('field'));
  $storageType
    ->expects($this
    ->any())
    ->method('getConfigPrefix')
    ->will($this
    ->returnValue('field.storage'));
  $entityType = $this
    ->createMock(ConfigEntityTypeInterface::class);
  $entityType
    ->expects($this
    ->any())
    ->method('getProvider')
    ->will($this
    ->returnValue('node'));
  $entityType
    ->expects($this
    ->any())
    ->method('getConfigPrefix')
    ->willReturn('node');
  $this->moduleHandler = $this
    ->createMock(ModuleHandlerInterface::class);
  $this->moduleHandler
    ->expects($this
    ->any())
    ->method('invokeAll')
    ->will($this
    ->returnValue([]));
  $storage_access_control_handler = new FieldStorageConfigAccessControlHandler($storageType);
  $storage_access_control_handler
    ->setModuleHandler($this->moduleHandler);
  $entity_type_manager = $this
    ->createMock(EntityTypeManagerInterface::class);
  $entity_type_manager
    ->expects($this
    ->any())
    ->method('getDefinition')
    ->willReturnMap([
    [
      'field_storage_config',
      TRUE,
      $storageType,
    ],
    [
      'node',
      TRUE,
      $entityType,
    ],
  ]);
  $entity_type_manager
    ->expects($this
    ->any())
    ->method('getStorage')
    ->willReturnMap([
    [
      'field_storage_config',
      $this
        ->createMock(EntityStorageInterface::class),
    ],
  ]);
  $entity_type_manager
    ->expects($this
    ->any())
    ->method('getAccessControlHandler')
    ->willReturnMap([
    [
      'field_storage_config',
      $storage_access_control_handler,
    ],
  ]);
  $container = new Container();
  $container
    ->set('entity_type.manager', $entity_type_manager);
  $container
    ->set('uuid', $this
    ->createMock(UuidInterface::class));
  $container
    ->set('cache_contexts_manager', $this
    ->prophesize(CacheContextsManager::class));
  \Drupal::setContainer($container);
  $this->entity = new FieldStorageConfig([
    'field_name' => 'test_field',
    'entity_type' => 'node',
    'type' => 'boolean',
    'id' => 'node.test_field',
    'uuid' => '6f2f259a-f3c7-42ea-bdd5-111ad1f85ed1',
  ]);
  $this->accessControlHandler = $storage_access_control_handler;
}