summaryrefslogtreecommitdiff
path: root/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache')
-rw-r--r--vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/CacheAdapterFactoryTest.php64
-rw-r--r--vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/CacheAdapterTest.php68
-rw-r--r--vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/ClosureCacheAdapterTest.php94
-rw-r--r--vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/NullCacheAdapterTest.php20
-rw-r--r--vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/Zf2CacheAdapterTest.php58
5 files changed, 304 insertions, 0 deletions
diff --git a/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/CacheAdapterFactoryTest.php b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/CacheAdapterFactoryTest.php
new file mode 100644
index 0000000..c4140a9
--- /dev/null
+++ b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/CacheAdapterFactoryTest.php
@@ -0,0 +1,64 @@
+<?php
+
+namespace Guzzle\Tests\Cache;
+
+use Guzzle\Cache\CacheAdapterFactory;
+use Guzzle\Cache\DoctrineCacheAdapter;
+use Doctrine\Common\Cache\ArrayCache;
+use Zend\Cache\StorageFactory;
+
+/**
+ * @covers Guzzle\Cache\CacheAdapterFactory
+ */
+class CacheAdapterFactoryTest extends \Guzzle\Tests\GuzzleTestCase
+{
+ /** @var ArrayCache */
+ private $cache;
+
+ /** @var DoctrineCacheAdapter */
+ private $adapter;
+
+ /**
+ * Prepares the environment before running a test.
+ */
+ protected function setup()
+ {
+ parent::setUp();
+ $this->cache = new ArrayCache();
+ $this->adapter = new DoctrineCacheAdapter($this->cache);
+ }
+
+ /**
+ * @expectedException \InvalidArgumentException
+ */
+ public function testEnsuresConfigIsObject()
+ {
+ CacheAdapterFactory::fromCache(array());
+ }
+
+ /**
+ * @expectedException \InvalidArgumentException
+ */
+ public function testEnsuresKnownType()
+ {
+ CacheAdapterFactory::fromCache(new \stdClass());
+ }
+
+ public function cacheProvider()
+ {
+ return array(
+ array(new DoctrineCacheAdapter(new ArrayCache()), 'Guzzle\Cache\DoctrineCacheAdapter'),
+ array(new ArrayCache(), 'Guzzle\Cache\DoctrineCacheAdapter'),
+ array(StorageFactory::factory(array('adapter' => 'memory')), 'Guzzle\Cache\Zf2CacheAdapter'),
+ );
+ }
+
+ /**
+ * @dataProvider cacheProvider
+ */
+ public function testCreatesNullCacheAdapterByDefault($cache, $type)
+ {
+ $adapter = CacheAdapterFactory::fromCache($cache);
+ $this->assertInstanceOf($type, $adapter);
+ }
+}
diff --git a/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/CacheAdapterTest.php b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/CacheAdapterTest.php
new file mode 100644
index 0000000..3e30ddd
--- /dev/null
+++ b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/CacheAdapterTest.php
@@ -0,0 +1,68 @@
+<?php
+
+namespace Guzzle\Tests\Cache;
+
+use Guzzle\Cache\DoctrineCacheAdapter;
+use Doctrine\Common\Cache\ArrayCache;
+
+/**
+ * @covers Guzzle\Cache\DoctrineCacheAdapter
+ * @covers Guzzle\Cache\AbstractCacheAdapter
+ */
+class CacheAdapterTest extends \Guzzle\Tests\GuzzleTestCase
+{
+ /** @var ArrayCache */
+ private $cache;
+
+ /** @var DoctrineCacheAdapter */
+ private $adapter;
+
+ /**
+ * Prepares the environment before running a test.
+ */
+ protected function setUp()
+ {
+ parent::setUp();
+ $this->cache = new ArrayCache();
+ $this->adapter = new DoctrineCacheAdapter($this->cache);
+ }
+
+ /**
+ * Cleans up the environment after running a test.
+ */
+ protected function tearDown()
+ {
+ $this->adapter = null;
+ $this->cache = null;
+ parent::tearDown();
+ }
+
+ public function testGetCacheObject()
+ {
+ $this->assertEquals($this->cache, $this->adapter->getCacheObject());
+ }
+
+ public function testSave()
+ {
+ $this->assertTrue($this->adapter->save('test', 'data', 1000));
+ }
+
+ public function testFetch()
+ {
+ $this->assertTrue($this->adapter->save('test', 'data', 1000));
+ $this->assertEquals('data', $this->adapter->fetch('test'));
+ }
+
+ public function testContains()
+ {
+ $this->assertTrue($this->adapter->save('test', 'data', 1000));
+ $this->assertTrue($this->adapter->contains('test'));
+ }
+
+ public function testDelete()
+ {
+ $this->assertTrue($this->adapter->save('test', 'data', 1000));
+ $this->assertTrue($this->adapter->delete('test'));
+ $this->assertFalse($this->adapter->contains('test'));
+ }
+}
diff --git a/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/ClosureCacheAdapterTest.php b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/ClosureCacheAdapterTest.php
new file mode 100644
index 0000000..12de65b
--- /dev/null
+++ b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/ClosureCacheAdapterTest.php
@@ -0,0 +1,94 @@
+<?php
+
+namespace Guzzle\Tests\Cache;
+
+use Guzzle\Cache\ClosureCacheAdapter;
+
+/**
+ * @covers Guzzle\Cache\ClosureCacheAdapter
+ */
+class ClosureCacheAdapterTest extends \Guzzle\Tests\GuzzleTestCase
+{
+ /** @var ClosureCacheAdapter */
+ private $adapter;
+
+ /** Array of callables to use for testing */
+ private $callables;
+
+ /** Cache data for testing */
+ public $data = array();
+
+ /**
+ * Prepares the environment before running a test.
+ */
+ protected function setUp()
+ {
+ parent::setUp();
+
+ $that = $this;
+ $this->callables = array(
+ 'contains' => function($id, $options = array()) use ($that) {
+ return array_key_exists($id, $that->data);
+ },
+ 'delete' => function($id, $options = array()) use ($that) {
+ unset($that->data[$id]);
+ return true;
+ },
+ 'fetch' => function($id, $options = array()) use ($that) {
+ return array_key_exists($id, $that->data) ? $that->data[$id] : null;
+ },
+ 'save' => function($id, $data, $lifeTime, $options = array()) use ($that) {
+ $that->data[$id] = $data;
+ return true;
+ }
+ );
+
+ $this->adapter = new ClosureCacheAdapter($this->callables);
+ }
+
+ /**
+ * Cleans up the environment after running a test.
+ */
+ protected function tearDown()
+ {
+ $this->cache = null;
+ $this->callables = null;
+ parent::tearDown();
+ }
+
+ /**
+ * @expectedException InvalidArgumentException
+ */
+ public function testEnsuresCallablesArePresent()
+ {
+ $callables = $this->callables;
+ unset($callables['delete']);
+ $cache = new ClosureCacheAdapter($callables);
+ }
+
+ public function testAllCallablesMustBePresent()
+ {
+ $cache = new ClosureCacheAdapter($this->callables);
+ }
+
+ public function testCachesDataUsingCallables()
+ {
+ $this->assertTrue($this->adapter->save('test', 'data', 1000));
+ $this->assertEquals('data', $this->adapter->fetch('test'));
+ }
+
+ public function testChecksIfCacheContainsKeys()
+ {
+ $this->adapter->save('test', 'data', 1000);
+ $this->assertTrue($this->adapter->contains('test'));
+ $this->assertFalse($this->adapter->contains('foo'));
+ }
+
+ public function testDeletesFromCacheByKey()
+ {
+ $this->adapter->save('test', 'data', 1000);
+ $this->assertTrue($this->adapter->contains('test'));
+ $this->adapter->delete('test');
+ $this->assertFalse($this->adapter->contains('test'));
+ }
+}
diff --git a/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/NullCacheAdapterTest.php b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/NullCacheAdapterTest.php
new file mode 100644
index 0000000..e05df3f
--- /dev/null
+++ b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/NullCacheAdapterTest.php
@@ -0,0 +1,20 @@
+<?php
+
+namespace Guzzle\Tests\Common\Cache;
+
+use Guzzle\Cache\NullCacheAdapter;
+
+/**
+ * @covers Guzzle\Cache\NullCacheAdapter
+ */
+class NullCacheAdapterTest extends \Guzzle\Tests\GuzzleTestCase
+{
+ public function testNullCacheAdapter()
+ {
+ $c = new NullCacheAdapter();
+ $this->assertEquals(false, $c->contains('foo'));
+ $this->assertEquals(true, $c->delete('foo'));
+ $this->assertEquals(false, $c->fetch('foo'));
+ $this->assertEquals(true, $c->save('foo', 'bar'));
+ }
+}
diff --git a/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/Zf2CacheAdapterTest.php b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/Zf2CacheAdapterTest.php
new file mode 100644
index 0000000..9077c12
--- /dev/null
+++ b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Cache/Zf2CacheAdapterTest.php
@@ -0,0 +1,58 @@
+<?php
+
+namespace Guzzle\Tests\Cache;
+
+use Guzzle\Cache\Zf2CacheAdapter;
+use Zend\Cache\StorageFactory;
+
+/**
+ * @covers Guzzle\Cache\Zf2CacheAdapter
+ */
+class Zf2CacheAdapterTest extends \Guzzle\Tests\GuzzleTestCase
+{
+ private $cache;
+ private $adapter;
+
+ /**
+ * Prepares the environment before running a test.
+ */
+ protected function setUp()
+ {
+ parent::setUp();
+ $this->cache = StorageFactory::factory(array(
+ 'adapter' => 'memory'
+ ));
+ $this->adapter = new Zf2CacheAdapter($this->cache);
+ }
+
+ /**
+ * Cleans up the environment after running a test.
+ */
+ protected function tearDown()
+ {
+ $this->adapter = null;
+ $this->cache = null;
+ parent::tearDown();
+ }
+
+ public function testCachesDataUsingCallables()
+ {
+ $this->assertTrue($this->adapter->save('test', 'data', 1000));
+ $this->assertEquals('data', $this->adapter->fetch('test'));
+ }
+
+ public function testChecksIfCacheContainsKeys()
+ {
+ $this->adapter->save('test', 'data', 1000);
+ $this->assertTrue($this->adapter->contains('test'));
+ $this->assertFalse($this->adapter->contains('foo'));
+ }
+
+ public function testDeletesFromCacheByKey()
+ {
+ $this->adapter->save('test', 'data', 1000);
+ $this->assertTrue($this->adapter->contains('test'));
+ $this->adapter->delete('test');
+ $this->assertFalse($this->adapter->contains('test'));
+ }
+}