summaryrefslogtreecommitdiff
path: root/modules/simpletest/tests/cache.test
diff options
context:
space:
mode:
Diffstat (limited to 'modules/simpletest/tests/cache.test')
-rw-r--r--modules/simpletest/tests/cache.test37
1 files changed, 37 insertions, 0 deletions
diff --git a/modules/simpletest/tests/cache.test b/modules/simpletest/tests/cache.test
index 8de74b04e..0fc9fe298 100644
--- a/modules/simpletest/tests/cache.test
+++ b/modules/simpletest/tests/cache.test
@@ -312,3 +312,40 @@ class CacheClearCase extends CacheTestCase {
t('All cache entries removed when the array exceeded the cache clear threshold.'));
}
}
+
+/**
+ * Test cache_is_empty() function.
+ */
+class CacheIsEmptyCase extends CacheTestCase {
+ public static function getInfo() {
+ return array(
+ 'name' => 'Cache emptiness test',
+ 'description' => 'Check if a cache bin is empty after performing clear operations.',
+ 'group' => 'Cache'
+ );
+ }
+
+ function setUp() {
+ $this->default_bin = 'cache_page';
+ $this->default_value = $this->randomName(10);
+
+ parent::setUp();
+ }
+
+ /**
+ * Test clearing using a cid.
+ */
+ function testIsEmpty() {
+ // Clear the cache bin.
+ cache_clear_all('*', $this->default_bin);
+ $this->assertTrue(cache_is_empty($this->default_bin), t('The cache bin is empty'));
+ // Add some data to the cache bin.
+ cache_set($this->default_cid, $this->default_value, $this->default_bin);
+ $this->assertCacheExists(t('Cache was set.'), $this->default_value, $this->default_cid);
+ $this->assertFalse(cache_is_empty($this->default_bin), t('The cache bin is not empty'));
+ // Remove the cached data.
+ cache_clear_all($this->default_cid, $this->default_bin);
+ $this->assertCacheRemoved(t('Cache was removed.'), $this->default_cid);
+ $this->assertTrue(cache_is_empty($this->default_bin), t('The cache bin is empty'));
+ }
+}