You are here

public function LayoutTempstoreRepositoryTest::testGetInvalidEntry in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/layout_builder/tests/src/Unit/LayoutTempstoreRepositoryTest.php \Drupal\Tests\layout_builder\Unit\LayoutTempstoreRepositoryTest::testGetInvalidEntry()

@covers ::get

File

core/modules/layout_builder/tests/src/Unit/LayoutTempstoreRepositoryTest.php, line 67

Class

LayoutTempstoreRepositoryTest
@coversDefaultClass \Drupal\layout_builder\LayoutTempstoreRepository @group layout_builder

Namespace

Drupal\Tests\layout_builder\Unit

Code

public function testGetInvalidEntry() {
  $section_storage = $this
    ->prophesize(SectionStorageInterface::class);
  $section_storage
    ->getStorageType()
    ->willReturn('my_storage_type');
  $section_storage
    ->getStorageId()
    ->willReturn('my_storage_id');
  $tempstore = $this
    ->prophesize(SharedTempStore::class);
  $tempstore
    ->get('my_storage_id')
    ->willReturn([
    'section_storage' => 'this_is_not_an_entity',
  ]);
  $tempstore_factory = $this
    ->prophesize(SharedTempStoreFactory::class);
  $tempstore_factory
    ->get('layout_builder.section_storage.my_storage_type')
    ->willReturn($tempstore
    ->reveal());
  $repository = new LayoutTempstoreRepository($tempstore_factory
    ->reveal());
  $this
    ->expectException(\UnexpectedValueException::class);
  $this
    ->expectExceptionMessage('The entry with storage type "my_storage_type" and ID "my_storage_id" is invalid');
  $repository
    ->get($section_storage
    ->reveal());
}