function ContentTranslationConfigImportTest::testConfigImportUpdates in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/modules/content_translation/src/Tests/ContentTranslationConfigImportTest.php \Drupal\content_translation\Tests\ContentTranslationConfigImportTest::testConfigImportUpdates()
Tests config import updates.
File
- core/
modules/ content_translation/ src/ Tests/ ContentTranslationConfigImportTest.php, line 66 - Contains \Drupal\content_translation\Tests\ContentTranslationConfigImportTest.
Class
- ContentTranslationConfigImportTest
- Tests content translation updates performed during config import.
Namespace
Drupal\content_translation\TestsCode
function testConfigImportUpdates() {
$entity_type_id = 'entity_test_mul';
$config_id = $entity_type_id . '.' . $entity_type_id;
$config_name = 'language.content_settings.' . $config_id;
$storage = $this->container
->get('config.storage');
$sync = $this->container
->get('config.storage.sync');
// Verify the configuration to create does not exist yet.
$this
->assertIdentical($storage
->exists($config_name), FALSE, $config_name . ' not found.');
// Create new config entity.
$data = array(
'uuid' => 'a019d89b-c4d9-4ed4-b859-894e4e2e93cf',
'langcode' => 'en',
'status' => TRUE,
'dependencies' => array(
'module' => array(
'content_translation',
),
),
'id' => $config_id,
'target_entity_type_id' => 'entity_test_mul',
'target_bundle' => 'entity_test_mul',
'default_langcode' => 'site_default',
'language_alterable' => FALSE,
'third_party_settings' => array(
'content_translation' => array(
'enabled' => TRUE,
),
),
);
$sync
->write($config_name, $data);
$this
->assertIdentical($sync
->exists($config_name), TRUE, $config_name . ' found.');
// Import.
$this->configImporter
->reset()
->import();
// Verify the values appeared.
$config = $this
->config($config_name);
$this
->assertIdentical($config
->get('id'), $config_id);
// Verify that updates were performed.
$entity_type = $this->container
->get('entity.manager')
->getDefinition($entity_type_id);
$table = $entity_type
->getDataTable();
$db_schema = $this->container
->get('database')
->schema();
$result = $db_schema
->fieldExists($table, 'content_translation_source') && $db_schema
->fieldExists($table, 'content_translation_outdated');
$this
->assertTrue($result, 'Content translation updates were successfully performed during config import.');
}