public function testRestoreFailure() { $storage1 = $this->getMock('ezcCacheStackableStorage', array('reset', 'purge', 'restore')); $storage1->expects($this->once())->method('restore')->with('id_1', array())->will($this->returnValue(false)); $storage2 = $this->getMock('ezcCacheStackableStorage', array('reset', 'purge', 'restore')); $storage2->expects($this->once())->method('restore')->with('id_1', array())->will($this->returnValue(false)); $stack = new ezcCacheStack('foo'); $stack->options->metaStorage = $this->getMetaStorageMock(); $stack->pushStorage(new ezcCacheStackStorageConfiguration('id_1', $storage1, 10, 0.5)); $stack->pushStorage(new ezcCacheStackStorageConfiguration('id_2', $storage2, 100, 0.7)); $this->assertFalse($stack->restore('id_1')); }
<?php require_once 'tutorial_autoload.php'; $stack = new ezcCacheStack('stack'); $stack->pushStorage(new ezcCacheStackStorageConfiguration('file', $fileStorage, 1000000, 0.5)); $stack->pushStorage(new ezcCacheStackStorageConfiguration('apc', $apcStorage, 1000, 0.3)); $stack->options->replacementStrategy = 'ezcCacheStackLfuReplacementStrategy'; // ... somewhere else... $stack->store('id_1', 'id_1_data'); $stack->store('id_2', 'id_2_data', array('attribute' => 'value')); $id1data = $stack->restore('id_1');