function TermTranslationUITest::testTranslateLinkVocabularyAdminPage

Tests translate link on vocabulary term list.

File

drupal/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/TermTranslationUITest.php, line 101
Definition of Drupal\taxonomy\Tests\TermTranslationUITest.

Class

TermTranslationUITest
Tests the Term Translation UI.

Namespace

Drupal\taxonomy\Tests

Code

function testTranslateLinkVocabularyAdminPage() {
  $this->admin_user = $this
    ->drupalCreateUser(array_merge(parent::getTranslatorPermissions(), array(
    'access administration pages',
    'administer taxonomy',
  )));
  $this
    ->drupalLogin($this->admin_user);
  $translatable_tid = $this
    ->createEntity(array(), $this->langcodes[0], $this->vocabulary
    ->id());

  // Create an untranslatable vocabulary.
  $untranslatable_vocabulary = entity_create('taxonomy_vocabulary', array(
    'name' => 'untranslatable_voc',
    'description' => $this
      ->randomName(),
    'vid' => 'untranslatable_voc',
    'langcode' => Language::LANGCODE_NOT_SPECIFIED,
    'weight' => mt_rand(0, 10),
  ));
  $untranslatable_vocabulary
    ->save();
  $untranslatable_tid = $this
    ->createEntity(array(), $this->langcodes[0], $untranslatable_vocabulary
    ->id());

  // Verify translation links.
  $this
    ->drupalGet('admin/structure/taxonomy/manage/' . $this->vocabulary
    ->id());
  $this
    ->assertResponse(200);
  $this
    ->assertLinkByHref('term/' . $translatable_tid . '/translations');
  $this
    ->assertLinkByHref('term/' . $translatable_tid . '/edit');
  $this
    ->drupalGet('admin/structure/taxonomy/manage/' . $untranslatable_vocabulary
    ->id());
  $this
    ->assertResponse(200);
  $this
    ->assertLinkByHref('term/' . $untranslatable_tid . '/edit');
  $this
    ->assertNoLinkByHref('term/' . $untranslatable_tid . '/translations');
}