_memcache = new \Memcache; $ok = @$this->_memcache->connect('localhost', 11211); if (!$ok) { $this->markTestSkipped('The ' . __CLASS__ .' requires the use of memcache'); } } else { $this->markTestSkipped('The ' . __CLASS__ .' requires the use of memcache'); } } public function testNoExpire() { $cache = $this->_getCacheDriver(); $cache->save('noexpire', 'value', 0); sleep(1); $this->assertTrue($cache->contains('noexpire'), 'Memcache provider should support no-expire'); } public function testLongLifetime() { $cache = $this->_getCacheDriver(); $cache->save('key', 'value', 30 * 24 * 3600 + 1); $this->assertTrue($cache->contains('key'), 'Memcache provider should support TTL > 30 days'); } protected function _getCacheDriver() { $driver = new MemcacheCache(); $driver->setMemcache($this->_memcache); return $driver; } }