class ContentTranslationContextualLinksTest in Drupal 10
Same name in this branch
- 10 core/modules/content_translation/tests/src/Functional/ContentTranslationContextualLinksTest.php \Drupal\Tests\content_translation\Functional\ContentTranslationContextualLinksTest
- 10 core/modules/content_translation/tests/src/FunctionalJavascript/ContentTranslationContextualLinksTest.php \Drupal\Tests\content_translation\FunctionalJavascript\ContentTranslationContextualLinksTest
Same name and namespace in other branches
- 8 core/modules/content_translation/tests/src/FunctionalJavascript/ContentTranslationContextualLinksTest.php \Drupal\Tests\content_translation\FunctionalJavascript\ContentTranslationContextualLinksTest
- 9 core/modules/content_translation/tests/src/FunctionalJavascript/ContentTranslationContextualLinksTest.php \Drupal\Tests\content_translation\FunctionalJavascript\ContentTranslationContextualLinksTest
Tests that contextual links are available for content translation.
@group content_translation
Hierarchy
- class \Drupal\Tests\BrowserTestBase extends \PHPUnit\Framework\TestCase uses \Drupal\Tests\PhpUnitCompatibilityTrait, \Symfony\Bridge\PhpUnit\ExpectDeprecationTrait, FunctionalTestSetupTrait, TestSetupTrait, BlockCreationTrait, ConfigTestTrait, ExtensionListTestTrait, ContentTypeCreationTrait, NodeCreationTrait, RandomGeneratorTrait, TestRequirementsTrait, PhpUnitWarnings, UiHelperTrait, UserCreationTrait, XdebugRequestTrait
- class \Drupal\FunctionalJavascriptTests\WebDriverTestBase
- class \Drupal\Tests\content_translation\FunctionalJavascript\ContentTranslationContextualLinksTest
- class \Drupal\FunctionalJavascriptTests\WebDriverTestBase
Expanded class hierarchy of ContentTranslationContextualLinksTest
File
- core/
modules/ content_translation/ tests/ src/ FunctionalJavascript/ ContentTranslationContextualLinksTest.php, line 13
Namespace
Drupal\Tests\content_translation\FunctionalJavascriptView source
class ContentTranslationContextualLinksTest extends WebDriverTestBase {
/**
* The 'translator' user to use during testing.
*
* @var \Drupal\user\UserInterface
*/
protected $translator;
/**
* {@inheritdoc}
*/
protected static $modules = [
'content_translation',
'contextual',
'node',
];
/**
* {@inheritdoc}
*/
protected $defaultTheme = 'stark';
/**
* {@inheritdoc}
*/
protected function setUp() : void {
parent::setUp();
// Set up an additional language.
ConfigurableLanguage::createFromLangcode('es')
->save();
// Create a content type.
$this
->drupalCreateContentType([
'type' => 'page',
]);
// Enable content translation.
$this
->drupalLogin($this->rootUser);
$this
->drupalGet('admin/config/regional/content-language');
$edit = [
'entity_types[node]' => TRUE,
'settings[node][page][translatable]' => TRUE,
];
$this
->submitForm($edit, 'Save configuration');
$this
->drupalLogout();
// Create a translator user.
$permissions = [
'access contextual links',
'administer nodes',
'edit any page content',
'translate any entity',
];
$this->translator = $this
->drupalCreateUser($permissions);
}
/**
* Tests that a contextual link is available for translating a node.
*/
public function testContentTranslationContextualLinks() {
$node = $this
->drupalCreateNode([
'type' => 'page',
'title' => 'Test',
]);
// Check that the translate link appears on the node page.
$this
->drupalLogin($this->translator);
$this
->drupalGet('node/' . $node
->id());
$link = $this
->assertSession()
->waitForElement('css', '[data-contextual-id^="node:node=1"] .contextual-links a:contains("Translate")');
$this
->assertStringContainsString('node/1/translations', $link
->getAttribute('href'));
}
}