public function ConfigInstallTest::testCollectionInstallationCollectionConfigEntity in Drupal 10
Same name and namespace in other branches
- 8 core/tests/Drupal/KernelTests/Core/Config/ConfigInstallTest.php \Drupal\KernelTests\Core\Config\ConfigInstallTest::testCollectionInstallationCollectionConfigEntity()
- 9 core/tests/Drupal/KernelTests/Core/Config/ConfigInstallTest.php \Drupal\KernelTests\Core\Config\ConfigInstallTest::testCollectionInstallationCollectionConfigEntity()
Tests collections which do not support config entities install correctly.
Config entity detection during config installation is done by matching config name prefixes. If a collection provides a configuration with a matching name but does not support config entities it should be created using simple configuration.
File
- core/
tests/ Drupal/ KernelTests/ Core/ Config/ ConfigInstallTest.php, line 163
Class
- ConfigInstallTest
- Tests installation of configuration objects in installation functionality.
Namespace
Drupal\KernelTests\Core\ConfigCode
public function testCollectionInstallationCollectionConfigEntity() {
$collections = [
'entity',
];
\Drupal::state()
->set('config_collection_install_test.collection_names', $collections);
// Install the test module.
$this
->installModules([
'config_test',
'config_collection_install_test',
]);
/** @var \Drupal\Core\Config\StorageInterface $active_storage */
$active_storage = \Drupal::service('config.storage');
$this
->assertEquals($collections, $active_storage
->getAllCollectionNames());
$collection_storage = $active_storage
->createCollection('entity');
// The config_test.dynamic.dotted.default configuration object saved in the
// active store should be a configuration entity complete with UUID. Because
// the entity collection does not support configuration entities the
// configuration object stored there with the same name should only contain
// a label.
$name = 'config_test.dynamic.dotted.default';
$data = $active_storage
->read($name);
$this
->assertTrue(isset($data['uuid']));
$data = $collection_storage
->read($name);
$this
->assertSame([
'label' => 'entity',
], $data);
}