public function SqlContentEntityStorageSchemaIndexTest::testIndex in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/system/src/Tests/Entity/Update/SqlContentEntityStorageSchemaIndexTest.php \Drupal\system\Tests\Entity\Update\SqlContentEntityStorageSchemaIndexTest::testIndex()
Tests entity and field schema database updates and execution order.
File
- core/
modules/ system/ src/ Tests/ Entity/ Update/ SqlContentEntityStorageSchemaIndexTest.php, line 31 - Contains \Drupal\system\Tests\Entity\Update\SqlContentEntityStorageSchemaIndexTest.
Class
- SqlContentEntityStorageSchemaIndexTest
- Tests that a newly-added index is properly created during database updates.
Namespace
Drupal\system\Tests\Entity\UpdateCode
public function testIndex() {
// The initial Drupal 8 database dump before any updates does not include
// the entity ID in the entity field data table indices that were added in
// https://www.drupal.org/node/2261669.
$this
->assertTrue(db_index_exists('node_field_data', 'node__default_langcode'), 'Index node__default_langcode exists prior to running updates.');
$this
->assertFalse(db_index_exists('node_field_data', 'node__id__default_langcode__langcode'), 'Index node__id__default_langcode__langcode does not exist prior to running updates.');
$this
->assertFalse(db_index_exists('users_field_data', 'user__id__default_langcode__langcode'), 'Index users__id__default_langcode__langcode does not exist prior to running updates.');
// Running database updates should update the entity schemata to add the
// indices from https://www.drupal.org/node/2261669.
$this
->runUpdates();
$this
->assertFalse(db_index_exists('node_field_data', 'node__default_langcode'), 'Index node__default_langcode properly removed.');
$this
->assertTrue(db_index_exists('node_field_data', 'node__id__default_langcode__langcode'), 'Index node__id__default_langcode__langcode properly created on the node_field_data table.');
$this
->assertTrue(db_index_exists('users_field_data', 'user__id__default_langcode__langcode'), 'Index users__id__default_langcode__langcode properly created on the user_field_data table.');
}