function InlineBlockTestBase::addInlineBlockToLayout

Same name and namespace in other branches
  1. 11.x core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockTestBase.php \Drupal\Tests\layout_builder\FunctionalJavascript\InlineBlockTestBase::addInlineBlockToLayout()
  2. 10 core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockTestBase.php \Drupal\Tests\layout_builder\FunctionalJavascript\InlineBlockTestBase::addInlineBlockToLayout()
  3. 8.9.x core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockTestBase.php \Drupal\Tests\layout_builder\FunctionalJavascript\InlineBlockTestBase::addInlineBlockToLayout()

Adds an entity block to the layout.

Parameters

string $title: The title field value.

string $body: The body field value.

File

core/modules/layout_builder/tests/src/FunctionalJavascript/InlineBlockTestBase.php, line 137

Class

InlineBlockTestBase
Base class for testing inline blocks.

Namespace

Drupal\Tests\layout_builder\FunctionalJavascript

Code

protected function addInlineBlockToLayout($title, $body) {
  $assert_session = $this->assertSession();
  $page = $this->getSession()
    ->getPage();
  $page->clickLink('Add block');
  $assert_session->assertWaitOnAjaxRequest();
  $this->assertNotEmpty($assert_session->waitForLink('Create custom block'));
  $this->clickLink('Create custom block');
  $assert_session->assertWaitOnAjaxRequest();
  $textarea = $assert_session->waitForElement('css', '[name="settings[block_form][body][0][value]"]');
  $this->assertNotEmpty($textarea);
  $assert_session->fieldValueEquals('Title', '');
  $page->findField('Title')
    ->setValue($title);
  $textarea->setValue($body);
  $page->pressButton('Add block');
  $this->assertDialogClosedAndTextVisible($body, static::INLINE_BLOCK_LOCATOR);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.