You are here

public function EntityUnitTest::testPostSave in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/tests/Drupal/Tests/Core/Entity/EntityUnitTest.php \Drupal\Tests\Core\Entity\EntityUnitTest::testPostSave()

@covers ::postSave

File

core/tests/Drupal/Tests/Core/Entity/EntityUnitTest.php, line 398
Contains \Drupal\Tests\Core\Entity\EntityUnitTest.

Class

EntityUnitTest
@coversDefaultClass \Drupal\Core\Entity\Entity @group Entity @group Access

Namespace

Drupal\Tests\Core\Entity

Code

public function testPostSave() {
  $this->cacheTagsInvalidator
    ->expects($this
    ->at(0))
    ->method('invalidateTags')
    ->with(array(
    $this->entityTypeId . '_list',
  ));
  $this->cacheTagsInvalidator
    ->expects($this
    ->at(1))
    ->method('invalidateTags')
    ->with(array(
    $this->entityTypeId . ':' . $this->values['id'],
    // Own cache tag.
    $this->entityTypeId . '_list',
  ));

  // This method is internal, so check for errors on calling it only.
  $storage = $this
    ->getMock('\\Drupal\\Core\\Entity\\EntityStorageInterface');

  // A creation should trigger the invalidation of the "list" cache tag.
  $this->entity
    ->postSave($storage, FALSE);

  // An update should trigger the invalidation of both the "list" and the
  // "own" cache tags.
  $this->entity
    ->postSave($storage, TRUE);
}