View source
<?php
namespace Drupal\Tests\tmgmt_demo\Functional;
use Drupal\filter\Entity\FilterFormat;
use Drupal\Tests\tmgmt\Functional\TMGMTTestBase;
class TMGMTDemoTest extends TMGMTTestBase {
public static $modules = array(
'tmgmt_demo',
'ckeditor',
);
public function setUp() : void {
parent::setUp();
$basic_html_format = FilterFormat::load('basic_html');
$restricted_html_format = FilterFormat::create(array(
'format' => 'restricted_html',
'name' => 'Restricted HTML',
));
$restricted_html_format
->save();
$full_html_format = FilterFormat::create(array(
'format' => 'full_html',
'name' => 'Full HTML',
));
$full_html_format
->save();
$this
->loginAsAdmin([
'access content overview',
'administer tmgmt',
'translate any entity',
'edit any translatable_node content',
$basic_html_format
->getPermissionName(),
$restricted_html_format
->getPermissionName(),
$full_html_format
->getPermissionName(),
]);
}
public function testInstalled() {
$this
->drupalGet('node');
$this
->assertText('First node');
$this
->assertText('Second node');
$this
->assertText('TMGMT Demo');
$this
->clickLink(t('First node'));
$this
->clickLink(t('Translate'));
$edit = [
'languages[de]' => TRUE,
'languages[fr]' => TRUE,
];
$this
->drupalPostForm(NULL, $edit, t('Request translation'));
$this
->assertText(t('2 jobs need to be checked out.'));
$this
->drupalGet('admin/content');
$this
->clickLink(t('Second node'));
$this
->clickLink(t('Translate'));
$this
->drupalPostForm(NULL, $edit, t('Request translation'));
$this
->assertText(t('2 jobs need to be checked out.'));
$edit = [
'translator' => 'local',
];
$this
->drupalPostForm(NULL, $edit, 'Submit to provider and continue');
$this
->assertText('The translation job has been submitted.');
$this
->drupalPostForm('admin/tmgmt/sources', [], t('Request translation'));
$this
->assertUniqueText(t("You didn't select any source items."));
$this
->drupalPostForm(NULL, [], t('Search'));
$this
->assertNoText(t("You didn't select any source items."));
$this
->drupalPostForm(NULL, [], t('Cancel'));
$this
->assertNoText(t("You didn't select any source items."));
$this
->drupalPostForm(NULL, [], t('Add to cart'));
$this
->assertUniqueText(t("You didn't select any source items."));
$this
->drupalGet('node/1/edit');
$this
->assertOptionSelected('edit-body-0-format--2', 'basic_html', 'Basic HTML selected as format');
$this
->drupalGet('node/2/edit');
$this
->assertOptionSelected('edit-body-0-format--2', 'restricted_html', 'Restricted HTML selected as format');
$this
->drupalGet('node/3/edit');
$this
->assertOptionSelected('edit-body-0-format--2', 'full_html', 'Full HTML selected as format');
}
}