public function testWithPersistentConnection() { $path = dirname(dirname(dirname(__FILE__))) . '/tests/_drafts/test-cache-serialised.cdb'; // create handler to read. try { $cacheRead = new \PhpDbaCache\Cache($path, 'cdb', 'r'); } catch (\RuntimeException $e) { $this->markTestSkipped($e->getMessage()); } $this->assertTrue($cacheRead->has(md5('test123'))); $this->assertInstanceOf('\\stdClass', $cacheRead->get(md5('test123'))); $cacheRead->closeDba(); }
/** * Tests support for CDB - Tiny Constant Database. * CDB can not be deleted - clear garbage manually. */ public function testCleanGarbageCollectionOnCdbHandler() { $path = dirname(dirname(__FILE__)) . '/tests/_drafts/test-cache-cdb2.cdb'; // create cdb-handler to write. try { $cacheMake = new \Cache($path, 'cdb_make', 'n'); } catch (\RuntimeException $e) { $this->markTestSkipped($e->getMessage()); } $this->assertInstanceOf('\\PhpDbaCache\\Cache', $cacheMake); $testIdentifier1 = md5('ZipArchive' . time()); $testIdentifier2 = md5('XMLReader' . time()); $this->assertTrue($cacheMake->put($testIdentifier1, new \ZipArchive())); $this->assertTrue($cacheMake->put($testIdentifier2, new \XMLReader())); // CacheGarbageCollector has no effect. $sweep = new \PhpDbaCache\Sweep($cacheMake); $sweep->all(); // deleting has no effect. $cacheMake->delete($testIdentifier1); $cacheMake->delete($testIdentifier2); // for read we close the handler. $cacheMake->closeDba(); // create cdb-handler to read. try { $cacheRead = new \PhpDbaCache\Cache($path, 'cdb', 'r'); } catch (\RuntimeException $e) { $this->markTestSkipped($e->getMessage()); } $this->assertTrue($cacheRead->has($testIdentifier1)); $this->assertTrue($cacheRead->has($testIdentifier2)); $this->assertInstanceOf('\\PhpDbaCache\\ZipArchive', $cacheRead->get($testIdentifier1)); $this->assertInstanceOf('\\PhpDbaCache\\XMLReader', $cacheRead->get($testIdentifier2)); $cacheRead->closeDba(); }