2013-03-17 11:01:10 -04:00
|
|
|
<?php
|
2013-07-16 09:46:27 -04:00
|
|
|
|
2013-03-17 11:01:10 -04: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 09:46:27 -04:00
|
|
|
namespace Test\Memcache;
|
|
|
|
|
|
2016-05-20 09:38:20 -04:00
|
|
|
class MemcachedTest extends Cache {
|
2020-04-10 10:51:06 -04:00
|
|
|
public static function setUpBeforeClass(): void {
|
2014-11-10 17:30:38 -05:00
|
|
|
parent::setUpBeforeClass();
|
|
|
|
|
|
2013-12-09 08:31:35 -05:00
|
|
|
if (!\OC\Memcache\Memcached::isAvailable()) {
|
|
|
|
|
self::markTestSkipped('The memcached extension is not available.');
|
|
|
|
|
}
|
2014-12-02 07:51:36 -05:00
|
|
|
$instance = new \OC\Memcache\Memcached(self::getUniqueID());
|
|
|
|
|
if ($instance->set(self::getUniqueID(), self::getUniqueID()) === false) {
|
2013-12-08 19:02:42 -05:00
|
|
|
self::markTestSkipped('memcached server seems to be down.');
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
2019-11-21 10:40:38 -05:00
|
|
|
protected function setUp(): void {
|
2014-11-10 17:30:38 -05:00
|
|
|
parent::setUp();
|
2014-12-02 07:51:36 -05:00
|
|
|
$this->instance = new \OC\Memcache\Memcached($this->getUniqueID());
|
2013-03-17 11:01:10 -04:00
|
|
|
}
|
2015-09-05 15:02:49 -04:00
|
|
|
|
|
|
|
|
public function testClear() {
|
|
|
|
|
// Memcached is sometimes broken with clear(), so we don't test it thoroughly
|
2020-10-05 09:12:57 -04:00
|
|
|
$value = 'ipsum lorum';
|
2015-09-05 15:02:49 -04:00
|
|
|
$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 11:01:10 -04:00
|
|
|
}
|