protected function FieldDefinitionTest::setUp in Drupal 9
Same name and namespace in other branches
- 8 core/tests/Drupal/Tests/Core/Entity/FieldDefinitionTest.php \Drupal\Tests\Core\Entity\FieldDefinitionTest::setUp()
Overrides UnitTestCase::setUp
File
- core/
tests/ Drupal/ Tests/ Core/ Entity/ FieldDefinitionTest.php, line 53
Class
- FieldDefinitionTest
- Unit test for the FieldDefinition class.
Namespace
Drupal\Tests\Core\EntityCode
protected function setUp() : void {
$this->fieldType = $this
->randomMachineName();
$this->fieldTypeDefinition = [
'id' => $this->fieldType,
'field_settings' => [
'some_instance_setting' => 'value 2',
],
'storage_settings' => [
'some_storage_setting' => 'some value',
],
];
$field_type_manager = $this
->prophesize(FieldTypePluginManagerInterface::class);
$field_type_manager
->getDefinitions()
->willReturn([
$this->fieldType => $this->fieldTypeDefinition,
]);
$field_type_manager
->getDefinition()
->willReturn($this->fieldTypeDefinition);
$field_type_manager
->getDefaultFieldSettings($this->fieldType)
->willReturn($this->fieldTypeDefinition['field_settings']);
$field_type_manager
->getDefaultStorageSettings($this->fieldType)
->willReturn($this->fieldTypeDefinition['storage_settings']);
$storage_definition = $this
->prophesize(FieldStorageDefinitionInterface::class);
$storage_definition
->getMainPropertyName()
->willReturn('value');
$storage_definition
->getType()
->willReturn($this->fieldType);
$storage_definition
->getName()
->willReturn('test_field_name');
$storage_supports_translation =& $this->storageSupportsTranslation;
$storage_definition
->isTranslatable()
->will(function () use (&$storage_supports_translation) {
return $storage_supports_translation;
});
$storage_definition
->getSettings()
->willReturn($this->fieldTypeDefinition['storage_settings']);
$storage_definition
->getSetting('some_storage_setting')
->willReturn($this->fieldTypeDefinition['storage_settings']['some_storage_setting']);
$this->storageDefinition = $storage_definition
->reveal();
$entity_field_manager = $this
->prophesize(EntityFieldManagerInterface::class);
$entity_field_manager
->getFieldStorageDefinitions('entity_test')
->willReturn([
'foo' => $storage_definition
->reveal(),
]);
$typed_data_manager = $this
->prophesize(TypedDataManager::class);
$container = new ContainerBuilder();
$container
->set('plugin.manager.field.field_type', $field_type_manager
->reveal());
$container
->set('entity_field.manager', $entity_field_manager
->reveal());
$container
->set('typed_data_manager', $typed_data_manager
->reveal());
\Drupal::setContainer($container);
}