You are here

public function LocaleConfigSubscriberForeignTest::testEnglish in Drupal 10

Same name and namespace in other branches
  1. 8 core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberForeignTest.php \Drupal\Tests\locale\Kernel\LocaleConfigSubscriberForeignTest::testEnglish()
  2. 9 core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberForeignTest.php \Drupal\Tests\locale\Kernel\LocaleConfigSubscriberForeignTest::testEnglish()

Tests that adding English creates a translation override.

File

core/modules/locale/tests/src/Kernel/LocaleConfigSubscriberForeignTest.php, line 123

Class

LocaleConfigSubscriberForeignTest
Tests default configuration handling with a foreign default language.

Namespace

Drupal\Tests\locale\Kernel

Code

public function testEnglish() {
  $config_name = 'locale_test.translation';
  ConfigurableLanguage::createFromLangcode('en')
    ->save();

  // Adding a language on the UI would normally call updateConfigTranslations.
  $this->localeConfigManager
    ->updateConfigTranslations([
    $config_name,
  ], [
    'en',
  ]);
  $this
    ->assertConfigOverride($config_name, 'test', 'English test', 'en');
  $this->configFactory
    ->getEditable('locale.settings')
    ->set('translate_english', TRUE)
    ->save();
  $this
    ->saveLocaleTranslationData($config_name, 'test', 'English test', 'Updated English test', 'en');
  $this
    ->assertTranslation($config_name, 'Updated English test', 'en', FALSE);
  $this
    ->saveLanguageOverride($config_name, 'test', 'Updated English', 'en');
  $this
    ->assertTranslation($config_name, 'Updated English', 'en');
  $this
    ->deleteLocaleTranslationData($config_name, 'test', 'English test', 'en');
  $this
    ->assertNoConfigOverride($config_name, 'en');
}