function LayoutBuilderTest::testFormAlter

Same name and namespace in other branches
  1. 9 core/modules/layout_builder/tests/src/Functional/LayoutBuilderTest.php \Drupal\Tests\layout_builder\Functional\LayoutBuilderTest::testFormAlter()
  2. 8.9.x core/modules/layout_builder/tests/src/Functional/LayoutBuilderTest.php \Drupal\Tests\layout_builder\Functional\LayoutBuilderTest::testFormAlter()
  3. 11.x core/modules/layout_builder/tests/src/Functional/LayoutBuilderTest.php \Drupal\Tests\layout_builder\Functional\LayoutBuilderTest::testFormAlter()

Tests that hook_form_alter() has access to the Layout Builder info.

File

core/modules/layout_builder/tests/src/Functional/LayoutBuilderTest.php, line 543

Class

LayoutBuilderTest
Tests the Layout Builder UI.

Namespace

Drupal\Tests\layout_builder\Functional

Code

public function testFormAlter() : void {
  $assert_session = $this->assertSession();
  $page = $this->getSession()
    ->getPage();
  $this->drupalLogin($this->drupalCreateUser([
    'configure any layout',
    'administer node display',
    'administer node fields',
  ]));
  $field_ui_prefix = 'admin/structure/types/manage/bundle_with_section_field';
  $display = LayoutBuilderEntityViewDisplay::load('node.bundle_with_section_field.default');
  $this->enableLayoutBuilder($display);
  $this->drupalGet("{$field_ui_prefix}/display/default");
  $page->clickLink('Manage layout');
  $page->clickLink('Add block');
  $page->clickLink('Powered by Drupal');
  $assert_session->pageTextContains('Layout Builder Storage: node.bundle_with_section_field.default');
  $assert_session->pageTextContains('Layout Builder Section: layout_onecol');
  $assert_session->pageTextContains('Layout Builder Component: system_powered_by_block');
  $this->drupalGet("{$field_ui_prefix}/display/default");
  $page->clickLink('Manage layout');
  $page->clickLink('Add section');
  $page->clickLink('One column');
  $assert_session->pageTextContains('Layout Builder Storage: node.bundle_with_section_field.default');
  $assert_session->pageTextContains('Layout Builder Section: layout_onecol');
  $assert_session->pageTextContains('Layout Builder Layout: layout_onecol');
}

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