protected function EntityKernelTestBase::setUp in Drupal 10
Same name and namespace in other branches
- 8 core/tests/Drupal/KernelTests/Core/Entity/EntityKernelTestBase.php \Drupal\KernelTests\Core\Entity\EntityKernelTestBase::setUp()
- 9 core/tests/Drupal/KernelTests/Core/Entity/EntityKernelTestBase.php \Drupal\KernelTests\Core\Entity\EntityKernelTestBase::setUp()
4 methods override EntityKernelTestBase::setUp()
- EntityDefinitionUpdateTest::setUp in core/
tests/ Drupal/ KernelTests/ Core/ Entity/ EntityDefinitionUpdateTest.php - EntityReferenceFormatterTest::setUp in core/
modules/ field/ tests/ src/ Kernel/ EntityReference/ EntityReferenceFormatterTest.php - FieldableEntityDefinitionUpdateTest::setUp in core/
tests/ Drupal/ KernelTests/ Core/ Entity/ FieldableEntityDefinitionUpdateTest.php - TokenReplaceKernelTestBase::setUp in core/
modules/ system/ tests/ src/ Kernel/ Token/ TokenReplaceKernelTestBase.php
File
- core/
tests/ Drupal/ KernelTests/ Core/ Entity/ EntityKernelTestBase.php, line 58
Class
- EntityKernelTestBase
- Defines an abstract test base for entity kernel tests.
Namespace
Drupal\KernelTests\Core\EntityCode
protected function setUp() : void {
parent::setUp();
$this->entityTypeManager = $this->container
->get('entity_type.manager');
$this->state = $this->container
->get('state');
$this
->installSchema('system', 'sequences');
$this
->installEntitySchema('user');
$this
->installEntitySchema('entity_test');
// If the concrete test sub-class installs the Node or Comment modules,
// ensure that the node and comment entity schema are created before the
// field configurations are installed. This is because the entity tables
// need to be created before the body field storage tables. This prevents
// trying to create the body field tables twice.
$class = static::class;
while ($class) {
if (property_exists($class, 'modules')) {
// Only check the modules, if the $modules property was not inherited.
$rp = new \ReflectionProperty($class, 'modules');
if ($rp->class == $class) {
foreach (array_intersect([
'node',
'comment',
], $class::$modules) as $module) {
$this
->installEntitySchema($module);
}
if (in_array('forum', $class::$modules, TRUE)) {
// Forum module is particular about the order that dependencies are
// enabled in. The comment, node and taxonomy config and the
// taxonomy_term schema need to be installed before the forum config
// which in turn needs to be installed before field config.
$this
->installEntitySchema('taxonomy_term');
$this
->installConfig([
'comment',
'node',
'taxonomy',
]);
$this
->installConfig([
'forum',
]);
}
}
}
$class = get_parent_class($class);
}
$this
->installConfig([
'field',
]);
}