3 namespace Doctrine\Tests\Common\Cache;
5 use Doctrine\Common\Cache\MemcachedCache;
9 * @requires extension memcached
11 class MemcachedCacheTest extends CacheTest
15 protected function setUp()
17 $this->memcached = new Memcached();
18 $this->memcached->setOption(Memcached::OPT_COMPRESSION, false);
19 $this->memcached->addServer('127.0.0.1', 11211);
21 if (@fsockopen('127.0.0.1', 11211) === false) {
22 unset($this->memcached);
23 $this->markTestSkipped('Cannot connect to Memcached.');
27 protected function tearDown()
29 if ($this->memcached instanceof Memcached) {
30 $this->memcached->flush();
37 * Memcached does not support " ", null byte and very long keys so we remove them from the tests.
39 public function provideCacheIds()
41 $ids = parent::provideCacheIds();
42 unset($ids[21], $ids[22], $ids[24]);
47 public function testGetMemcachedReturnsInstanceOfMemcached()
49 $this->assertInstanceOf('Memcached', $this->_getCacheDriver()->getMemcached());
55 protected function _getCacheDriver()
57 $driver = new MemcachedCache();
58 $driver->setMemcached($this->memcached);