Chris@0: adminUser = $this->drupalCreateUser(['administer languages']); Chris@0: $this->drupalLogin($this->adminUser); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Tests whether the language config schema is valid. Chris@0: */ Chris@0: public function testValidLanguageConfigSchema() { Chris@0: // Make sure no language configuration available by default. Chris@0: $config_data = $this->config('language.settings')->get(); Chris@0: $this->assertTrue(empty($config_data)); Chris@0: Chris@0: $settings_path = 'admin/config/regional/content-language'; Chris@0: Chris@0: // Enable translation for menu link. Chris@0: $edit['entity_types[menu_link_content]'] = TRUE; Chris@0: $edit['settings[menu_link_content][menu_link_content][settings][language][language_alterable]'] = TRUE; Chris@0: Chris@0: // Enable translation for user. Chris@0: $edit['entity_types[user]'] = TRUE; Chris@0: $edit['settings[user][user][settings][language][language_alterable]'] = TRUE; Chris@0: $edit['settings[user][user][settings][language][langcode]'] = 'en'; Chris@0: Chris@0: $this->drupalPostForm($settings_path, $edit, t('Save configuration')); Chris@0: Chris@0: $config_data = $this->config('language.content_settings.menu_link_content.menu_link_content'); Chris@0: // Make sure configuration saved correctly. Chris@0: $this->assertTrue($config_data->get('language_alterable')); Chris@0: Chris@0: $this->assertConfigSchema(\Drupal::service('config.typed'), $config_data->getName(), $config_data->get()); Chris@0: } Chris@0: Chris@0: }