2013-03-17 15:01:10 +00:00
|
|
|
<?php
|
2013-07-16 13:46:27 +00:00
|
|
|
|
2013-03-17 15:01:10 +00:00
|
|
|
/**
|
|
|
|
* Copyright (c) 2013 Robin Appelman <icewind@owncloud.com>
|
|
|
|
* This file is licensed under the Affero General Public License version 3 or
|
|
|
|
* later.
|
|
|
|
* See the COPYING-README file.
|
|
|
|
*/
|
|
|
|
|
2013-07-16 13:46:27 +00:00
|
|
|
namespace Test\Memcache;
|
|
|
|
|
|
|
|
class Memcached extends Cache {
|
2013-12-09 00:02:42 +00:00
|
|
|
static public function setUpBeforeClass() {
|
2014-11-10 22:30:38 +00:00
|
|
|
parent::setUpBeforeClass();
|
|
|
|
|
2013-12-09 13:31:35 +00:00
|
|
|
if (!\OC\Memcache\Memcached::isAvailable()) {
|
|
|
|
self::markTestSkipped('The memcached extension is not available.');
|
|
|
|
}
|
2014-12-02 12:51:36 +00:00
|
|
|
$instance = new \OC\Memcache\Memcached(self::getUniqueID());
|
|
|
|
if ($instance->set(self::getUniqueID(), self::getUniqueID()) === false) {
|
2013-12-09 00:02:42 +00:00
|
|
|
self::markTestSkipped('memcached server seems to be down.');
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2014-11-10 22:30:38 +00:00
|
|
|
protected function setUp() {
|
|
|
|
parent::setUp();
|
2014-12-02 12:51:36 +00:00
|
|
|
$this->instance = new \OC\Memcache\Memcached($this->getUniqueID());
|
2013-03-17 15:01:10 +00:00
|
|
|
}
|
2015-09-05 19:02:49 +00:00
|
|
|
|
|
|
|
public function testClear() {
|
|
|
|
// Memcached is sometimes broken with clear(), so we don't test it thoroughly
|
|
|
|
$value='ipsum lorum';
|
|
|
|
$this->instance->set('1_value1', $value);
|
|
|
|
$this->instance->set('1_value2', $value);
|
|
|
|
$this->instance->set('2_value1', $value);
|
|
|
|
$this->instance->set('3_value1', $value);
|
|
|
|
|
|
|
|
$this->assertTrue($this->instance->clear('1_'));
|
|
|
|
|
|
|
|
$this->assertFalse($this->instance->hasKey('1_value1'));
|
|
|
|
$this->assertFalse($this->instance->hasKey('1_value2'));
|
|
|
|
//$this->assertTrue($this->instance->hasKey('2_value1'));
|
|
|
|
//$this->assertTrue($this->instance->hasKey('3_value1'));
|
|
|
|
|
|
|
|
$this->assertTrue($this->instance->clear());
|
|
|
|
|
|
|
|
$this->assertFalse($this->instance->hasKey('1_value1'));
|
|
|
|
$this->assertFalse($this->instance->hasKey('1_value2'));
|
|
|
|
$this->assertFalse($this->instance->hasKey('2_value1'));
|
|
|
|
$this->assertFalse($this->instance->hasKey('3_value1'));
|
|
|
|
}
|
2013-03-17 15:01:10 +00:00
|
|
|
}
|