silverstripe-framework/tests/CacheTest.php
Ingo Schommer 4b59730b1c FEATURE: Add cache factory that provides nice API over top of Zend_Cache (from r97389)
git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/trunk@102447 467b73ca-7a2a-4603-9d3b-597d59a354a9
2010-04-12 05:04:05 +00:00

48 lines
1.1 KiB
PHP

<?php
class CacheTest extends SapphireTest {
function testCacheBasics() {
$cache = Cache::factory('test');
$cache->save('Good', 'cachekey');
$this->assertEquals('Good', $cache->load('cachekey'));
}
function testCacheCanBeDisabled() {
Cache::set_cache_lifetime('test', -1, 10);
$cache = Cache::factory('test');
$cache->save('Good', 'cachekey');
$this->assertFalse($cache->load('cachekey'));
}
function testCacheLifetime() {
Cache::set_cache_lifetime('test', 4, 20);
$cache = Cache::factory('test');
$cache->save('Good', 'cachekey');
$this->assertEquals('Good', $cache->load('cachekey'));
sleep(8);
$this->assertFalse($cache->load('cachekey'));
}
function testCacheSeperation() {
$cache1 = Cache::factory('test1');
$cache2 = Cache::factory('test2');
$cache1->save('Foo', 'cachekey');
$cache2->save('Bar', 'cachekey');
$this->assertEquals('Foo', $cache1->load('cachekey'));
$this->assertEquals('Bar', $cache2->load('cachekey'));
$cache1->remove('cachekey');
$this->assertFalse($cache1->load('cachekey'));
$this->assertEquals('Bar', $cache2->load('cachekey'));
}
}