You are here

public function PrivateTempStoreTest::testGetMetadata in Drupal 8

Same name in this branch
  1. 8 core/tests/Drupal/Tests/Core/TempStore/PrivateTempStoreTest.php \Drupal\Tests\Core\TempStore\PrivateTempStoreTest::testGetMetadata()
  2. 8 core/modules/user/tests/src/Unit/PrivateTempStoreTest.php \Drupal\Tests\user\Unit\PrivateTempStoreTest::testGetMetadata()

Tests the getMetadata() method.

@covers ::getMetadata

File

core/tests/Drupal/Tests/Core/TempStore/PrivateTempStoreTest.php, line 174

Class

PrivateTempStoreTest
@coversDefaultClass \Drupal\Core\TempStore\PrivateTempStore @group TempStore

Namespace

Drupal\Tests\Core\TempStore

Code

public function testGetMetadata() {
  $this->keyValue
    ->expects($this
    ->at(0))
    ->method('get')
    ->with('1:test')
    ->will($this
    ->returnValue($this->ownObject));
  $this->keyValue
    ->expects($this
    ->at(1))
    ->method('get')
    ->with('1:test')
    ->will($this
    ->returnValue(FALSE));
  $metadata = $this->tempStore
    ->getMetadata('test');
  $this
    ->assertInstanceOf(Lock::class, $metadata);
  $this
    ->assertObjectHasAttribute('ownerId', $metadata);
  $this
    ->assertObjectHasAttribute('updated', $metadata);

  // Data should get removed.
  $this
    ->assertObjectNotHasAttribute('data', $metadata);
  $this
    ->assertNull($this->tempStore
    ->getMetadata('test'));
}