function FieldTypePluginManagerTest::testCreateInstanceWithConfig
Same name in other branches
- 9 core/modules/field/tests/src/Kernel/FieldTypePluginManagerTest.php \Drupal\Tests\field\Kernel\FieldTypePluginManagerTest::testCreateInstanceWithConfig()
- 10 core/modules/field/tests/src/Kernel/FieldTypePluginManagerTest.php \Drupal\Tests\field\Kernel\FieldTypePluginManagerTest::testCreateInstanceWithConfig()
- 11.x core/modules/field/tests/src/Kernel/FieldTypePluginManagerTest.php \Drupal\Tests\field\Kernel\FieldTypePluginManagerTest::testCreateInstanceWithConfig()
Tests creation of field item instances.
File
-
core/
modules/ field/ tests/ src/ Kernel/ FieldTypePluginManagerTest.php, line 62
Class
- FieldTypePluginManagerTest
- Tests the field type manager.
Namespace
Drupal\Tests\field\KernelCode
public function testCreateInstanceWithConfig() {
/** @var \Drupal\Core\Field\FieldTypePluginManagerInterface $field_type_manager */
$field_type_manager = \Drupal::service('plugin.manager.field.field_type');
$type = 'test_field';
$definition = $field_type_manager->getDefinition($type);
$class = $definition['class'];
$field_name = 'field_' . $type;
$field_definition = BaseFieldDefinition::create($type)->setLabel('Jenny')
->setDefaultValue(8675309);
$configuration = [
'field_definition' => $field_definition,
'name' => $field_name,
'parent' => NULL,
];
$entity = EntityTest::create();
$instance = $field_type_manager->createInstance($type, $configuration);
$this->assertInstanceOf($class, $instance);
$this->assertEqual($field_name, $instance->getName(), new FormattableMarkup('Instance name is @name', [
'@name' => $field_name,
]));
$this->assertEqual($instance->getFieldDefinition()
->getLabel(), 'Jenny', 'Instance label is Jenny');
$this->assertEqual($instance->getFieldDefinition()
->getDefaultValue($entity), [
[
'value' => 8675309,
],
], 'Instance default_value is 8675309');
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.