MetatagAsyncWidgetTest.php in Metatag Asynchronous Widget 1.0.x
File
tests/src/Functional/MetatagAsyncWidgetTest.php
View source
<?php
namespace Drupal\Tests\metatag_async_widget\Functional;
use Drupal\Tests\BrowserTestBase;
class MetatagAsyncWidgetTest extends BrowserTestBase {
protected static $modules = [
'field_ui',
'metatag_async_widget',
'node',
'block',
];
protected $defaultTheme = 'stark';
protected function setUp() {
parent::setUp();
$this
->drupalPlaceBlock('local_tasks_block');
$name = $this
->randomMachineName() . ' ' . $this
->randomMachineName();
$this
->drupalCreateContentType([
'type' => 'metatag_node',
'name' => $name,
]);
$this
->drupalLogin($this
->drupalCreateUser([
'administer content types',
'administer nodes',
'administer node fields',
'bypass node access',
'administer node form display',
]));
}
public function testMetatagAsyncWidget() {
$assert = $this
->assertSession();
$page = $this
->getSession()
->getPage();
$this
->drupalGet('admin/structure/types/manage/metatag_node/fields/add-field');
$assert
->fieldExists('new_storage_type')
->setValue('metatag');
$page
->pressButton('Save and continue');
$assert
->fieldExists('label')
->setValue('Meta tags');
$assert
->fieldExists('field_name')
->setValue('meta_tags');
$page
->pressButton('Save and continue');
$page
->pressButton('Save field settings');
$page
->pressButton('Save settings');
$this
->drupalGet('admin/structure/types/manage/metatag_node/form-display');
$assert
->fieldExists('edit-fields-field-meta-tags-type')
->setValue('metatag_async_widget_firehose');
$page
->pressButton('Save');
$assert
->pageTextContains('Your settings have been saved.');
$this
->drupalGet('node/add/metatag_node');
$assert
->fieldExists('edit-title-0-value')
->setValue($this
->getRandomGenerator()
->sentences('4'));
$assert
->fieldNotExists('edit-field-meta-tags-0-basic-abstract');
$page
->pressButton('Customize meta tags');
$assert
->pageTextContains('Configure the meta tags below.');
$abstract = $this
->getRandomGenerator()
->sentences(10);
$assert
->fieldExists('edit-field-meta-tags-0-basic-abstract')
->setValue($abstract);
$page
->pressButton('Save');
$page
->clickLink('Edit');
$assert
->fieldNotExists('edit-field-meta-tags-0-basic-abstract');
$page
->pressButton('Customize meta tags');
$assert
->fieldValueEquals('edit-field-meta-tags-0-basic-abstract', $abstract);
}
}