diff --git a/core/modules/language/lib/Drupal/language/Tests/LanguageConfigSchemaTest.php b/core/modules/language/lib/Drupal/language/Tests/LanguageConfigSchemaTest.php new file mode 100644 index 0000000..2a5d8f5 --- /dev/null +++ b/core/modules/language/lib/Drupal/language/Tests/LanguageConfigSchemaTest.php @@ -0,0 +1,69 @@ + 'Language config schema', + 'description' => 'Ensures the language config schema is correct.', + 'group' => 'Language', + ); + } + + /** + * {@inheritdoc} + */ + function setUp() { + parent::setUp(); + + // Create user. + $this->adminUser = $this->drupalCreateUser(array('administer languages')); + $this->drupalLogin($this->adminUser); + } + + /** + * Tests whether the language config schema is valid. + */ + function testValidLanguageConfigSchema() { + $settings_path = 'admin/config/regional/content-language'; + + // Enable translation for menu link. + $edit['entity_types[menu_link]'] = TRUE; + $edit['settings[menu_link][menu_link][settings][language][language_show]'] = TRUE; + + // Enable translation for user. + $edit['entity_types[user]'] = TRUE; + $edit['settings[user][user][settings][language][language_show]'] = TRUE; + $edit['settings[user][user][settings][language][langcode]'] = 'en'; + + $this->drupalPostForm($settings_path, $edit, t('Save')); + $this->assertConfigSchema(\Drupal::service('config.typed'), 'language.settings', \Drupal::config('language.settings')->get()); + } + +}