protected function EntityReferenceSelectionReferenceableTest::setUp in Drupal 9
Same name and namespace in other branches
- 8 core/modules/system/tests/src/Kernel/Entity/EntityReferenceSelectionReferenceableTest.php \Drupal\Tests\system\Kernel\Entity\EntityReferenceSelectionReferenceableTest::setUp()
Overrides KernelTestBase::setUp
File
- core/
modules/ system/ tests/ src/ Kernel/ Entity/ EntityReferenceSelectionReferenceableTest.php, line 55
Class
- EntityReferenceSelectionReferenceableTest
- Tests entity reference selection plugins.
Namespace
Drupal\Tests\system\Kernel\EntityCode
protected function setUp() : void {
parent::setUp();
$this
->installEntitySchema('entity_test_no_label');
$this
->installEntitySchema('node');
/** @var \Drupal\Core\Entity\EntityStorageInterface $storage */
$storage = $this->container
->get('entity_type.manager')
->getStorage('entity_test_no_label');
// Create a new node-type.
NodeType::create([
'type' => $node_type = mb_strtolower($this
->randomMachineName()),
'name' => $this
->randomString(),
])
->save();
// Create an entity reference field targeting 'entity_test_no_label'
// entities.
$field_name = mb_strtolower($this
->randomMachineName());
$this
->createEntityReferenceField('node', $node_type, $field_name, $this
->randomString(), 'entity_test_no_label');
$field_config = FieldConfig::loadByName('node', $node_type, $field_name);
$this->selectionHandler = $this->container
->get('plugin.manager.entity_reference_selection')
->getSelectionHandler($field_config);
// Generate a bundle name to be used with 'entity_test_no_label'.
$this->bundle = mb_strtolower($this
->randomMachineName());
// Create 6 entities to be referenced by the field.
foreach (static::$labels as $name) {
$storage
->create([
'id' => mb_strtolower($this
->randomMachineName()),
'name' => $name,
'type' => $this->bundle,
])
->save();
}
}