function OverridesSectionStorageTest::testIsOverridden

Same name and namespace in other branches
  1. 9 core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php \Drupal\Tests\layout_builder\Kernel\OverridesSectionStorageTest::testIsOverridden()
  2. 10 core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php \Drupal\Tests\layout_builder\Kernel\OverridesSectionStorageTest::testIsOverridden()
  3. 11.x core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php \Drupal\Tests\layout_builder\Kernel\OverridesSectionStorageTest::testIsOverridden()

@covers ::isOverridden

File

core/modules/layout_builder/tests/src/Kernel/OverridesSectionStorageTest.php, line 276

Class

OverridesSectionStorageTest
@coversDefaultClass <a href="/api/drupal/core%21modules%21layout_builder%21src%21Plugin%21SectionStorage%21OverridesSectionStorage.php/class/OverridesSectionStorage/8.9.x" title="Defines the &#039;overrides&#039; section storage type." class="local">\Drupal\layout_builder\Plugin\SectionStorage\OverridesSectionStorage</a>

Namespace

Drupal\Tests\layout_builder\Kernel

Code

public function testIsOverridden() {
    $display = LayoutBuilderEntityViewDisplay::create([
        'targetEntityType' => 'entity_test',
        'bundle' => 'entity_test',
        'mode' => 'default',
        'status' => TRUE,
    ]);
    $display->enableLayoutBuilder()
        ->setOverridable()
        ->save();
    $entity = EntityTest::create();
    $entity->set(OverridesSectionStorage::FIELD_NAME, [
        new Section('layout_onecol'),
    ]);
    $entity->save();
    $entity = EntityTest::load($entity->id());
    $context = EntityContext::fromEntity($entity);
    $this->plugin
        ->setContext('entity', $context);
    $this->assertTrue($this->plugin
        ->isOverridden());
    $this->plugin
        ->removeSection(0);
    $this->assertTrue($this->plugin
        ->isOverridden());
    $this->plugin
        ->removeAllSections(TRUE);
    $this->assertTrue($this->plugin
        ->isOverridden());
    $this->plugin
        ->removeAllSections();
    $this->assertFalse($this->plugin
        ->isOverridden());
}

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