Allow indirect set in CappedMemoryCache
This commit is contained in:
parent
8f89e3520d
commit
d195584a32
|
@ -64,8 +64,8 @@ class CappedMemoryCache implements ICache, \ArrayAccess {
|
||||||
return $this->hasKey($offset);
|
return $this->hasKey($offset);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function offsetGet($offset) {
|
public function &offsetGet($offset) {
|
||||||
return $this->get($offset);
|
return $this->cache[$offset];
|
||||||
}
|
}
|
||||||
|
|
||||||
public function offsetSet($offset, $value) {
|
public function offsetSet($offset, $value) {
|
||||||
|
|
|
@ -64,4 +64,16 @@ class CappedMemoryCache extends \Test_Cache {
|
||||||
$this->assertFalse($this->instance->hasKey('2_value1'));
|
$this->assertFalse($this->instance->hasKey('2_value1'));
|
||||||
$this->assertFalse($this->instance->hasKey('3_value1'));
|
$this->assertFalse($this->instance->hasKey('3_value1'));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function testIndirectSet() {
|
||||||
|
$this->instance->set('array', []);
|
||||||
|
|
||||||
|
$this->instance['array'][] = 'foo';
|
||||||
|
|
||||||
|
$this->assertEquals(['foo'], $this->instance->get('array'));
|
||||||
|
|
||||||
|
$this->instance['array']['bar'] = 'qwerty';
|
||||||
|
|
||||||
|
$this->assertEquals(['foo', 'bar' => 'qwerty'], $this->instance->get('array'));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue