Chris@0: setupLanguages(); Chris@0: $this->vocabulary = $this->createVocabulary(); Chris@0: $this->enableTranslation(); Chris@0: $this->setUpTerm(); Chris@0: $this->setUpTermReferenceField(); Chris@0: $this->setUpNode(); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Tests if the translated taxonomy term is displayed. Chris@0: */ Chris@0: public function testTranslatedTaxonomyTermReferenceDisplay() { Chris@0: $path = 'node/' . $this->node->id(); Chris@0: $translation_path = $this->translateToLangcode . '/' . $path; Chris@0: Chris@0: $this->drupalGet($path); Chris@0: $this->assertNoText($this->translatedTagName); Chris@0: $this->assertText($this->baseTagName); Chris@0: $this->drupalGet($translation_path); Chris@0: $this->assertText($this->translatedTagName); Chris@0: $this->assertNoText($this->baseTagName); Chris@0: } Chris@0: Chris@0: /** Chris@0: * Creates a test subject node, with translation. Chris@0: */ Chris@0: protected function setUpNode() { Chris@0: /** @var \Drupal\node\Entity\Node $node */ Chris@0: $node = Node::create([ Chris@0: 'title' => $this->randomMachineName(), Chris@0: 'type' => 'article', Chris@0: 'description' => [ Chris@0: [ Chris@0: 'value' => $this->randomMachineName(), Chris@0: 'format' => 'basic_html', Chris@0: ], Chris@0: ], Chris@0: $this->termFieldName => [['target_id' => $this->term->id()]], Chris@0: 'langcode' => $this->baseLangcode, Chris@0: ]); Chris@0: $node->save(); Chris@0: $node->addTranslation($this->translateToLangcode, $node->toArray()); Chris@0: $node->save(); Chris@0: $this->node = $node; Chris@0: } Chris@0: Chris@0: /** Chris@0: * Creates a test subject term, with translation. Chris@0: */ Chris@0: protected function setUpTerm() { Chris@0: $this->term = $this->createTerm($this->vocabulary, [ Chris@0: 'name' => $this->baseTagName, Chris@0: 'langcode' => $this->baseLangcode, Chris@0: ]); Chris@0: Chris@0: $this->term->addTranslation($this->translateToLangcode, [ Chris@0: 'name' => $this->translatedTagName, Chris@0: ]); Chris@0: $this->term->save(); Chris@0: } Chris@0: Chris@0: }