You are here

public function ImportStorageTransformerTest::testTransformLocked in Drupal 10

Same name and namespace in other branches
  1. 8 core/tests/Drupal/KernelTests/Core/Config/ImportStorageTransformerTest.php \Drupal\KernelTests\Core\Config\ImportStorageTransformerTest::testTransformLocked()
  2. 9 core/tests/Drupal/KernelTests/Core/Config/ImportStorageTransformerTest.php \Drupal\KernelTests\Core\Config\ImportStorageTransformerTest::testTransformLocked()

Tests that the import transformer throws an exception.

File

core/tests/Drupal/KernelTests/Core/Config/ImportStorageTransformerTest.php, line 66

Class

ImportStorageTransformerTest
Tests the import storage transformer.

Namespace

Drupal\KernelTests\Core\Config

Code

public function testTransformLocked() {

  // Mock the request lock not being available.
  $lock = $this
    ->createMock('Drupal\\Core\\Lock\\LockBackendInterface');
  $lock
    ->expects($this
    ->exactly(2))
    ->method('acquire')
    ->with(ImportStorageTransformer::LOCK_NAME)
    ->will($this
    ->returnValue(FALSE));
  $lock
    ->expects($this
    ->once())
    ->method('wait')
    ->with(ImportStorageTransformer::LOCK_NAME);

  // The import transformer under test.
  $transformer = new ImportStorageTransformer($this->container
    ->get('event_dispatcher'), $this->container
    ->get('database'), $lock, new NullLockBackend());
  $this
    ->expectException(StorageTransformerException::class);
  $this
    ->expectExceptionMessage("Cannot acquire config import transformer lock.");
  $transformer
    ->transform(new MemoryStorage());
}