function ConfigTranslationUiTest::testConfigTranslationDialog

Same name and namespace in other branches
  1. 11.x core/modules/config_translation/tests/src/FunctionalJavascript/ConfigTranslationUiTest.php \Drupal\Tests\config_translation\FunctionalJavascript\ConfigTranslationUiTest::testConfigTranslationDialog()

Tests that the add, edit and delete operations open in a modal.

File

core/modules/config_translation/tests/src/FunctionalJavascript/ConfigTranslationUiTest.php, line 52

Class

ConfigTranslationUiTest
Translate settings and entities to various languages.

Namespace

Drupal\Tests\config_translation\FunctionalJavascript

Code

public function testConfigTranslationDialog() : void {
  $page = $this->getSession()
    ->getPage();
  ConfigurableLanguage::createFromLangcode('fi')->save();
  $user = $this->drupalCreateUser([
    'translate configuration',
  ]);
  $this->drupalLogin($user);
  $this->drupalGet('admin/structure/views/view/content/translate');
  $this->clickLink('Add');
  $this->assertEquals('Add Finnish translation for Content view', $this->assertSession()
    ->waitForElement('css', '.ui-dialog-title')
    ->getText());
  $this->assertSession()
    ->fieldExists('translation[config_names][views.view.content][label]')
    ->setValue('Content FI');
  $page->find('css', '.ui-dialog-buttonset')
    ->pressButton('Save translation');
  $this->assertSession()
    ->pageTextContains('Successfully saved Finnish translation.');
  $this->clickLink('Edit');
  $this->assertEquals('Edit Finnish translation for Content view', $this->assertSession()
    ->waitForElement('css', '.ui-dialog-title')
    ->getText());
  $this->getSession()
    ->getPage()
    ->find('css', '.ui-dialog-buttonset')
    ->pressButton('Save translation');
  $this->assertSession()
    ->pageTextContains('Successfully updated Finnish translation.');
  $page->find('css', '.dropbutton-toggle button')
    ->click();
  $this->clickLink('Delete');
  $this->assertEquals('Are you sure you want to delete the Finnish translation of Content view?', $this->assertSession()
    ->waitForElement('css', '.ui-dialog-title')
    ->getText());
  $page->find('css', '.ui-dialog-buttonset')
    ->pressButton('Delete');
  $this->assertSession()
    ->pageTextContains('Finnish translation of Content view was deleted');
}

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