* @copyright 2016 Timothy J. Warren * @license http://www.opensource.org/licenses/mit-license.html MIT License * @version 1.0.0 * @link https://git.timshomepage.net/timw4mail/banker */ namespace Aviat\Banker\Tests\Driver; use PHPUnit\Framework\TestCase; class DriverTestBase extends TestCase { protected $driver; public function tearDown() { $this->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')); } }