public function GenericCacheBackendUnitTestBase::testDeleteMultiple

Test Drupal\Core\Cache\CacheBackendInterface::delete() and Drupal\Core\Cache\CacheBackendInterface::deleteMultiple().

File

drupal/core/modules/system/lib/Drupal/system/Tests/Cache/GenericCacheBackendUnitTestBase.php, line 320
Definition of Drupal\system\Tests\Cache\GenericCacheBackendUnitTestBase.

Class

GenericCacheBackendUnitTestBase
Tests any cache backend.

Namespace

Drupal\system\Tests\Cache

Code

public function testDeleteMultiple() {
  $backend = $this
    ->getCacheBackend();

  // Set numerous testing keys.
  $backend
    ->set('test1', 1);
  $backend
    ->set('test2', 3);
  $backend
    ->set('test3', 5);
  $backend
    ->set('test4', 7);
  $backend
    ->set('test5', 11);
  $backend
    ->set('test6', 13);
  $backend
    ->set('test7', 17);
  $backend
    ->delete('test1');
  $backend
    ->delete('test23');

  // Nonexistent key should not cause an error.
  $backend
    ->deleteMultiple(array(
    'test3',
    'test5',
    'test7',
    'test19',
    // Nonexistent key should not cause an error.
    'test21',
  ));

  // Test if expected keys have been deleted.
  $this
    ->assertIdentical(FALSE, $backend
    ->get('test1'), "Cache id test1 deleted.");
  $this
    ->assertIdentical(FALSE, $backend
    ->get('test3'), "Cache id test3 deleted.");
  $this
    ->assertIdentical(FALSE, $backend
    ->get('test5'), "Cache id test5 deleted.");
  $this
    ->assertIdentical(FALSE, $backend
    ->get('test7'), "Cache id test7 deleted.");

  // Test if expected keys exist.
  $this
    ->assertNotIdentical(FALSE, $backend
    ->get('test2'), "Cache id test2 exists.");
  $this
    ->assertNotIdentical(FALSE, $backend
    ->get('test4'), "Cache id test4 exists.");
  $this
    ->assertNotIdentical(FALSE, $backend
    ->get('test6'), "Cache id test6 exists.");

  // Test if that expected keys do not exist.
  $this
    ->assertIdentical(FALSE, $backend
    ->get('test19'), "Cache id test19 does not exist.");
  $this
    ->assertIdentical(FALSE, $backend
    ->get('test21'), "Cache id test21 does not exist.");
}