You are here

public function DefaultsSectionStorageTest::testGetContextsDuringPreview in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php \Drupal\Tests\layout_builder\Kernel\DefaultsSectionStorageTest::testGetContextsDuringPreview()
  2. 10 core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php \Drupal\Tests\layout_builder\Kernel\DefaultsSectionStorageTest::testGetContextsDuringPreview()

@covers ::getContextsDuringPreview

File

core/modules/layout_builder/tests/src/Kernel/DefaultsSectionStorageTest.php, line 161

Class

DefaultsSectionStorageTest
@coversDefaultClass \Drupal\layout_builder\Plugin\SectionStorage\DefaultsSectionStorage

Namespace

Drupal\Tests\layout_builder\Kernel

Code

public function testGetContextsDuringPreview() {
  $display = LayoutBuilderEntityViewDisplay::create([
    'targetEntityType' => 'entity_test',
    'bundle' => 'entity_test',
    'mode' => 'default',
    'status' => TRUE,
  ]);
  $display
    ->save();
  $context = EntityContext::fromEntity($display);
  $this->plugin
    ->setContext('display', $context);
  $result = $this->plugin
    ->getContextsDuringPreview();
  $this
    ->assertSame([
    'view_mode',
    'display',
    'layout_builder.entity',
  ], array_keys($result));
  $this
    ->assertSame($context, $result['display']);
  $this
    ->assertInstanceOf(EntityContext::class, $result['layout_builder.entity']);
  $result_value = $result['layout_builder.entity']
    ->getContextValue();
  $this
    ->assertInstanceOf(EntityTest::class, $result_value);
  $this
    ->assertSame('entity_test', $result_value
    ->bundle());
  $this
    ->assertInstanceOf(Context::class, $result['view_mode']);
  $result_value = $result['view_mode']
    ->getContextValue();
  $this
    ->assertSame('default', $result_value);
}