QuickEditLoadingTest.php in Drupal 9
File
core/modules/quickedit/tests/src/Kernel/QuickEditLoadingTest.php
View source
<?php
namespace Drupal\Tests\quickedit\Kernel;
use Drupal\KernelTests\KernelTestBase;
use Drupal\node\Entity\Node;
use Drupal\Tests\node\Traits\ContentTypeCreationTrait;
use Drupal\Tests\node\Traits\NodeCreationTrait;
use Drupal\Tests\user\Traits\UserCreationTrait;
class QuickEditLoadingTest extends KernelTestBase {
use NodeCreationTrait;
use UserCreationTrait;
use ContentTypeCreationTrait;
protected static $modules = [
'user',
'system',
'field',
'node',
'text',
'filter',
'contextual',
'quickedit',
];
protected $editorUser;
protected function setUp() : void {
parent::setUp();
$this
->installSchema('system', 'sequences');
$this
->installEntitySchema('user');
$this
->installEntitySchema('node');
$this
->installConfig([
'field',
'filter',
'node',
]);
$this
->createContentType([
'type' => 'page',
]);
$this
->createNode();
$this->editorUser = $this
->createUser([
'access content',
'create page content',
'edit any page content',
'access contextual links',
'access in-place editing',
]);
}
public function testDisplayOptions() {
$node = Node::load(1);
$renderer = $this->container
->get('renderer');
$this->container
->get('current_user')
->setAccount($this->editorUser);
$build = $node->body
->view([
'label' => 'inline',
]);
$this
->setRawContent($renderer
->renderRoot($build));
$elements = $this
->xpath('//div[@data-quickedit-field-id]');
$this
->assertFalse(!empty($elements), 'data-quickedit-field-id attribute not added when rendering field using dynamic display options.');
$build = $node->body
->view('default');
$this
->setRawContent($renderer
->renderRoot($build));
$elements = $this
->xpath('//div[@data-quickedit-field-id="node/1/body/en/default"]');
$this
->assertTrue(!empty($elements), 'Body with data-quickedit-field-id attribute found.');
}
}
Classes
Name |
Description |
QuickEditLoadingTest |
Tests loading of in-place editing functionality and lazy loading of its
in-place editors. |