function VocabularyTranslationTest::testVocabularyTitleLabelTranslation

Same name and namespace in other branches
  1. 10 core/modules/taxonomy/tests/src/Functional/VocabularyTranslationTest.php \Drupal\Tests\taxonomy\Functional\VocabularyTranslationTest::testVocabularyTitleLabelTranslation()
  2. 11.x core/modules/taxonomy/tests/src/Functional/VocabularyTranslationTest.php \Drupal\Tests\taxonomy\Functional\VocabularyTranslationTest::testVocabularyTitleLabelTranslation()

Tests vocabulary name translation for the overview and reset pages.

File

core/modules/taxonomy/tests/src/Functional/VocabularyTranslationTest.php, line 80

Class

VocabularyTranslationTest
Tests content translation for vocabularies.

Namespace

Drupal\Tests\taxonomy\Functional

Code

public function testVocabularyTitleLabelTranslation() : void {
    $this->drupalGet('admin/structure/taxonomy/add');
    // Create the vocabulary.
    $vid = mb_strtolower($this->randomMachineName());
    $edit['name'] = $this->randomMachineName();
    $edit['description'] = $this->randomMachineName();
    $edit['langcode'] = 'en';
    $edit['vid'] = $vid;
    $edit['default_language[content_translation]'] = TRUE;
    $this->submitForm($edit, 'Save');
    $langcode = $this->additionalLangcodes[0];
    $vid_name = $edit['name'];
    $translated_vid_name = "Translated {$vid_name}";
    $this->assertSession()
        ->pageTextContains($vid_name);
    // Assert that the name label is displayed on the translation form with the
    // right value.
    $this->drupalGet("admin/structure/taxonomy/manage/{$vid}/translate/{$langcode}/add");
    // Translate the name label.
    $this->submitForm([
        "translation[config_names][taxonomy.vocabulary.{$vid}][name]" => $translated_vid_name,
    ], 'Save translation');
    // Assert that the right name label is displayed on the taxonomy term
    // overview page.
    $this->drupalGet("admin/structure/taxonomy/manage/{$vid}/overview");
    $this->assertSession()
        ->pageTextContains($vid_name);
    $this->drupalGet("{$langcode}/admin/structure/taxonomy/manage/{$vid}/overview");
    $this->assertSession()
        ->pageTextContains($translated_vid_name);
    // Assert that the right name label is displayed on the taxonomy reset page.
    $this->drupalGet("admin/structure/taxonomy/manage/{$vid}/reset");
    $this->assertSession()
        ->pageTextContains($vid_name);
    $this->drupalGet("{$langcode}/admin/structure/taxonomy/manage/{$vid}/reset");
    $this->assertSession()
        ->pageTextContains($translated_vid_name);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.