You are here

protected function DynamicEntityReferenceConfigEntityTest::setUpField in Dynamic Entity Reference 8.2

Helper method to setup field and field storages.

4 calls to DynamicEntityReferenceConfigEntityTest::setUpField()
DynamicEntityReferenceConfigEntityTest::testConfigurableField in tests/src/Kernel/DynamicEntityReferenceConfigEntityTest.php
Config entity only configurable DER field.
DynamicEntityReferenceConfigEntityTest::testMixedConfigurableField in tests/src/Kernel/DynamicEntityReferenceConfigEntityTest.php
Content entity (int ID) and config entity configurable DER field.
DynamicEntityReferenceConfigEntityTest::testMixedConfigurableFieldMixedIds in tests/src/Kernel/DynamicEntityReferenceConfigEntityTest.php
Mixed content entity IDs (string and int) and config entity.
DynamicEntityReferenceConfigEntityTest::testMixedConfigurableFieldStringId in tests/src/Kernel/DynamicEntityReferenceConfigEntityTest.php
String-ID content entity and config entity.

File

tests/src/Kernel/DynamicEntityReferenceConfigEntityTest.php, line 108

Class

DynamicEntityReferenceConfigEntityTest
Tests for referencing configuration entities with configurable fields.

Namespace

Drupal\Tests\dynamic_entity_reference\Kernel

Code

protected function setUpField() {

  // Create a field.
  $this->fieldStorage = FieldStorageConfig::create([
    'field_name' => $this->fieldName,
    'type' => 'dynamic_entity_reference',
    'entity_type' => $this->entityType,
    'cardinality' => FieldStorageDefinitionInterface::CARDINALITY_UNLIMITED,
    'settings' => [
      'exclude_entity_types' => FALSE,
      'entity_type_ids' => $this->referencedEntityTypes,
    ],
  ]);
  $this->fieldStorage
    ->save();
  $settings = [];
  foreach ($this->referencedEntityTypes as $entity_type_id) {
    $settings[$entity_type_id] = [
      'handler' => "default:{$entity_type_id}",
      'handler_settings' => [],
    ];
  }
  $this->fieldConfig = FieldConfig::create([
    'field_name' => $this->fieldName,
    'entity_type' => $this->entityType,
    'bundle' => $this->bundle,
    'label' => 'Field test',
    'settings' => $settings,
  ]);
  $this->fieldConfig
    ->save();
}