store('KEY', 'Value'); } public function testGet() { $store = function($key, $value) { }; $fetch = function($key) { return '1234'; }; $delete = function($key) { echo '-'.$key; }; $exist = function($key) { return true; }; $lstore = new CachedLamdaStore(new Simple(), $store, $fetch, $delete, $exist); $this->assertEquals('1234', $lstore->fetch('KEY'), 'Stored value not returned'); } public function testStoreGet() { $store = function($key, $value) { }; $fetch = function($key) { return '1234'; }; $delete = function($key) { echo '-'.$key; }; $exist = function($key) { return true; }; $lstore = new CachedLamdaStore(new Simple(), $store, $fetch, $delete, $exist); $lstore->store('KEY', 'Value'); $this->assertEquals('Value', $lstore->fetch('KEY'), 'Stored value not returned'); } public function testExist() { $store = function($key, $value) { }; $fetch = function($key) { return '1234'; }; $delete = function($key) { echo '-'.$key; }; $exist = function($key) { return false; }; $lstore = new CachedLamdaStore(new Simple(), $store, $fetch, $delete, $exist); $this->assertFalse($lstore->exist('KEY')); $lstore->store('KEY', '1234'); $this->assertTrue($lstore->exist('KEY')); // exists in cache $exist = function($key) { return true; }; $lstore = new CachedLamdaStore(new Simple(), $store, $fetch, $delete, $exist); $this->assertTrue($lstore->exist('KEY')); } }