driver->__destruct(); } public function testGetSet() { $this->driver->set('foo', 'bar'); $this->assertEquals('bar', $this->driver->get('foo')); $bar = [ 'foo' => [ 'apple' => 'orange' ], 'bar' => 'baz' ]; $this->driver->set('bar', $bar); $this->assertEquals($bar, $this->driver->get('bar')); } public function testGetMultiple() { $this->driver->set('foo', ['bar']); $this->driver->set('bar', (object) [ 'foo' => [ 'bar' => 'baz' ] ]); // Intentionally set the same key with different values $this->driver->set('baz', 34); $this->driver->set('baz', 42); $expected = [ 'foo' => ['bar'], 'bar' => (object) [ 'foo' => [ 'bar' => 'baz' ] ], ]; $actual = $this->driver->getMultiple(['foo', 'bar']); $this->assertEquals($expected, $actual); } public function testSetWithExpires() { $this->driver->set('foo', 'bar', 30); $this->assertEquals('bar', $this->driver->get('foo')); } }