mirror of
https://github.com/friendica/friendica
synced 2025-05-04 09:04:11 +02:00
simplifying unittests (#5395)
* simplifying unittests - use @requires instead class_exist - define @small and @medium * simplifying unittests - removed unnecessary throwings
This commit is contained in:
parent
2fa6cc0000
commit
2d0446bd38
9 changed files with 83 additions and 87 deletions
|
@ -30,12 +30,18 @@ abstract class LockTest extends DatabaseTest
|
|||
Config::set('system', 'theme', 'system_theme');
|
||||
}
|
||||
|
||||
/**
|
||||
* @small
|
||||
*/
|
||||
public function testLock() {
|
||||
$this->instance->acquireLock('foo', 1);
|
||||
$this->assertTrue($this->instance->isLocked('foo'));
|
||||
$this->assertFalse($this->instance->isLocked('bar'));
|
||||
}
|
||||
|
||||
/**
|
||||
* @small
|
||||
*/
|
||||
public function testDoubleLock() {
|
||||
$this->instance->acquireLock('foo', 1);
|
||||
$this->assertTrue($this->instance->isLocked('foo'));
|
||||
|
@ -43,6 +49,9 @@ abstract class LockTest extends DatabaseTest
|
|||
$this->assertTrue($this->instance->acquireLock('foo', 1));
|
||||
}
|
||||
|
||||
/**
|
||||
* @small
|
||||
*/
|
||||
public function testReleaseLock() {
|
||||
$this->instance->acquireLock('foo', 1);
|
||||
$this->assertTrue($this->instance->isLocked('foo'));
|
||||
|
@ -50,6 +59,9 @@ abstract class LockTest extends DatabaseTest
|
|||
$this->assertFalse($this->instance->isLocked('foo'));
|
||||
}
|
||||
|
||||
/**
|
||||
* @small
|
||||
*/
|
||||
public function testReleaseAll() {
|
||||
$this->instance->acquireLock('foo', 1);
|
||||
$this->instance->acquireLock('bar', 1);
|
||||
|
@ -66,6 +78,9 @@ abstract class LockTest extends DatabaseTest
|
|||
$this->assertFalse($this->instance->isLocked('nice'));
|
||||
}
|
||||
|
||||
/**
|
||||
* @small
|
||||
*/
|
||||
public function testReleaseAfterUnlock() {
|
||||
$this->instance->acquireLock('foo', 1);
|
||||
$this->instance->acquireLock('bar', 1);
|
||||
|
@ -83,6 +98,9 @@ abstract class LockTest extends DatabaseTest
|
|||
$this->assertFalse($this->instance->isLocked('nice'));
|
||||
}
|
||||
|
||||
/**
|
||||
* @medium
|
||||
*/
|
||||
function testLockTTL() {
|
||||
|
||||
// TODO [nupplaphil] - Because of the Datetime-Utils for the database, we have to wait a FULL second between the checks to invalidate the db-locks/cache
|
||||
|
|
|
@ -7,6 +7,9 @@ namespace Friendica\Test\src\Core\Lock;
|
|||
use Friendica\Core\Cache\CacheDriverFactory;
|
||||
use Friendica\Core\Lock\CacheLockDriver;
|
||||
|
||||
/**
|
||||
* @requires extension Memcache
|
||||
*/
|
||||
class MemcacheCacheLockDriverTest extends LockTest
|
||||
{
|
||||
/**
|
||||
|
@ -16,25 +19,13 @@ class MemcacheCacheLockDriverTest extends LockTest
|
|||
|
||||
protected function getInstance()
|
||||
{
|
||||
if (class_exists('Memcache')) {
|
||||
try {
|
||||
$this->cache = CacheDriverFactory::create('memcache');
|
||||
} catch (\Exception $exception) {
|
||||
print "Memcache - TestCase failed: " . $exception->getMessage();
|
||||
throw new \Exception();
|
||||
}
|
||||
return new CacheLockDriver($this->cache);
|
||||
} else {
|
||||
$this->markTestSkipped('Memcache driver isn\'t available');
|
||||
return null;
|
||||
}
|
||||
$this->cache = CacheDriverFactory::create('memcache');
|
||||
return new CacheLockDriver($this->cache);
|
||||
}
|
||||
|
||||
public function tearDown()
|
||||
{
|
||||
if (class_exists('Memcache')) {
|
||||
$this->cache->clear();
|
||||
}
|
||||
$this->cache->clear();
|
||||
parent::tearDown();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,6 +7,9 @@ namespace Friendica\Test\src\Core\Lock;
|
|||
use Friendica\Core\Cache\CacheDriverFactory;
|
||||
use Friendica\Core\Lock\CacheLockDriver;
|
||||
|
||||
/**
|
||||
* @requires extension memcached
|
||||
*/
|
||||
class MemcachedCacheLockDriverTest extends LockTest
|
||||
{
|
||||
/**
|
||||
|
@ -16,25 +19,13 @@ class MemcachedCacheLockDriverTest extends LockTest
|
|||
|
||||
protected function getInstance()
|
||||
{
|
||||
if (class_exists('Memcached')) {
|
||||
try {
|
||||
$this->cache = CacheDriverFactory::create('memcached');
|
||||
} catch (\Exception $exception) {
|
||||
print "Memcached - TestCase failed: " . $exception->getMessage();
|
||||
throw new \Exception();
|
||||
}
|
||||
return new CacheLockDriver($this->cache);
|
||||
} else {
|
||||
$this->markTestSkipped('Memcached driver isn\'t available');
|
||||
return null;
|
||||
}
|
||||
$this->cache = CacheDriverFactory::create('memcached');
|
||||
return new CacheLockDriver($this->cache);
|
||||
}
|
||||
|
||||
public function tearDown()
|
||||
{
|
||||
if (class_exists('Memcached')) {
|
||||
$this->cache->clear();
|
||||
}
|
||||
$this->cache->clear();
|
||||
parent::tearDown();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,6 +7,9 @@ namespace Friendica\Test\src\Core\Lock;
|
|||
use Friendica\Core\Cache\CacheDriverFactory;
|
||||
use Friendica\Core\Lock\CacheLockDriver;
|
||||
|
||||
/**
|
||||
* @requires extension redis
|
||||
*/
|
||||
class RedisCacheLockDriverTest extends LockTest
|
||||
{
|
||||
/**
|
||||
|
@ -16,25 +19,14 @@ class RedisCacheLockDriverTest extends LockTest
|
|||
|
||||
protected function getInstance()
|
||||
{
|
||||
if (class_exists('Redis')) {
|
||||
try {
|
||||
$this->cache = CacheDriverFactory::create('redis');
|
||||
} catch (\Exception $exception) {
|
||||
print "Redis - TestCase failed: " . $exception->getMessage();
|
||||
throw new \Exception();
|
||||
}
|
||||
return new CacheLockDriver($this->cache);
|
||||
} else {
|
||||
$this->markTestSkipped('Redis driver isn\'t available');
|
||||
return null;
|
||||
}
|
||||
$this->cache = CacheDriverFactory::create('redis');
|
||||
return new CacheLockDriver($this->cache);
|
||||
|
||||
}
|
||||
|
||||
public function tearDown()
|
||||
{
|
||||
if (class_exists('Redis')) {
|
||||
$this->cache->clear();
|
||||
}
|
||||
$this->cache->clear();
|
||||
parent::tearDown();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue