public function LingotekNodeBulkDisabledTargetOverrideTranslationTest::testNodeTranslationUsingActions in Lingotek Translation 4.0.x
Same name and namespace in other branches
- 3.5.x tests/src/Functional/LingotekNodeBulkDisabledTargetOverrideTranslationTest.php \Drupal\Tests\lingotek\Functional\LingotekNodeBulkDisabledTargetOverrideTranslationTest::testNodeTranslationUsingActions()
- 3.6.x tests/src/Functional/LingotekNodeBulkDisabledTargetOverrideTranslationTest.php \Drupal\Tests\lingotek\Functional\LingotekNodeBulkDisabledTargetOverrideTranslationTest::testNodeTranslationUsingActions()
- 3.7.x tests/src/Functional/LingotekNodeBulkDisabledTargetOverrideTranslationTest.php \Drupal\Tests\lingotek\Functional\LingotekNodeBulkDisabledTargetOverrideTranslationTest::testNodeTranslationUsingActions()
- 3.8.x tests/src/Functional/LingotekNodeBulkDisabledTargetOverrideTranslationTest.php \Drupal\Tests\lingotek\Functional\LingotekNodeBulkDisabledTargetOverrideTranslationTest::testNodeTranslationUsingActions()
Tests that a node can be translated using the actions on the management page.
File
- tests/
src/ Functional/ LingotekNodeBulkDisabledTargetOverrideTranslationTest.php, line 121
Class
- LingotekNodeBulkDisabledTargetOverrideTranslationTest
- Tests translating a node using the bulk management form.
Namespace
Drupal\Tests\lingotek\FunctionalCode
public function testNodeTranslationUsingActions() {
// Create a node.
$edit = [];
$edit['title[0][value]'] = 'Llamas are cool';
$edit['body[0][value]'] = 'Llamas are very cool';
$edit['langcode[0][value]'] = 'en';
$edit['lingotek_translation_management[lingotek_translation_profile]'] = 'profile_with_disabled_targets';
$this
->saveAndPublishNodeForm($edit);
$this
->goToContentBulkManagementForm();
// Clicking English must init the upload of content.
$this
->assertLingotekUploadLink();
// And we cannot request yet a translation.
$this
->assertNoLingotekRequestTranslationLink('ca_ES');
$this
->assertNoLingotekRequestTranslationLink('es_MX');
$this
->clickLink('EN');
$this
->assertText('Node Llamas are cool has been uploaded.');
$this
->assertIdentical('en_US', \Drupal::state()
->get('lingotek.uploaded_locale'));
// There is a link for checking status.
$this
->assertLingotekCheckSourceStatusLink();
$key = $this
->getBulkSelectionKey('en', 1);
$edit = [
$key => TRUE,
$this
->getBulkOperationFormName() => $this
->getBulkOperationNameForCheckUpload('node'),
];
$this
->drupalPostForm(NULL, $edit, $this
->getApplyActionsButtonLabel());
$this
->assertIdentical('en_US', \Drupal::state()
->get('lingotek.uploaded_locale'));
$this
->assertText('Operations completed.');
$this
->assertNoLingotekRequestTranslationLink('ca_ES');
$this
->assertLingotekRequestTranslationLink('es_MX');
$this
->assertTargetStatus('es', Lingotek::STATUS_REQUEST);
$this
->assertTargetStatus('ca', Lingotek::STATUS_DISABLED);
// Request the disabled target translation.
$key = $this
->getBulkSelectionKey('en', 1);
$edit = [
$key => TRUE,
$this
->getBulkOperationFormName() => $this
->getBulkOperationNameForRequestTranslation('ca', 'node'),
];
$this
->drupalPostForm(NULL, $edit, $this
->getApplyActionsButtonLabel());
$this
->assertIdentical(NULL, \Drupal::state()
->get('lingotek.added_target_locale'));
$this
->assertIdentical(NULL, \Drupal::state()
->get('lingotek.requested_locales'));
$this
->assertText('Operations completed.');
$this
->assertTargetStatus('es', Lingotek::STATUS_REQUEST);
$this
->assertTargetStatus('ca', Lingotek::STATUS_DISABLED);
// Check status of the disabled target translation.
$this
->assertNoLingotekCheckTargetStatusLink('ca_ES');
$key = $this
->getBulkSelectionKey('en', 1);
$edit = [
$key => TRUE,
$this
->getBulkOperationFormName() => $this
->getBulkOperationNameForCheckTranslation('ca', 'node'),
];
$this
->drupalPostForm(NULL, $edit, $this
->getApplyActionsButtonLabel());
$this
->assertIdentical(NULL, \Drupal::state()
->get('lingotek.checked_target_locale'));
$this
->assertTargetStatus('es', Lingotek::STATUS_REQUEST);
$this
->assertTargetStatus('ca', Lingotek::STATUS_DISABLED);
// Download the Catalan translation.
$this
->assertNoLingotekDownloadTargetLink('ca_ES');
$key = $this
->getBulkSelectionKey('en', 1);
$edit = [
$key => TRUE,
$this
->getBulkOperationFormName() => $this
->getBulkOperationNameForDownloadTranslation('ca', 'node'),
];
$this
->drupalPostForm(NULL, $edit, $this
->getApplyActionsButtonLabel());
$this
->assertIdentical(NULL, \Drupal::state()
->get('lingotek.downloaded_locale'));
$this
->assertTargetStatus('es', Lingotek::STATUS_REQUEST);
$this
->assertTargetStatus('ca', Lingotek::STATUS_DISABLED);
}