From: Philipp Holzer Date: Wed, 5 Sep 2018 20:16:23 +0000 (+0200) Subject: CacheLockDriverTest Fixings X-Git-Url: https://git.mxchange.org/?a=commitdiff_plain;h=f148dcabc45c2c793f28518aa2deec6d51826546;p=friendica.git CacheLockDriverTest Fixings - Changing test behaviour --- diff --git a/tests/src/Core/Lock/ArrayCacheLockDriverTest.php b/tests/src/Core/Lock/ArrayCacheLockDriverTest.php index dc044f5c5c..671341718b 100644 --- a/tests/src/Core/Lock/ArrayCacheLockDriverTest.php +++ b/tests/src/Core/Lock/ArrayCacheLockDriverTest.php @@ -8,21 +8,9 @@ use Friendica\Core\Lock\CacheLockDriver; class ArrayCacheLockDriverTest extends LockTest { - /** - * @var \Friendica\Core\Cache\IMemoryCacheDriver - */ - private $cache; - protected function getInstance() { - $this->cache = new ArrayCache(); - return new CacheLockDriver($this->cache); - } - - public function tearDown() - { - $this->cache->clear(); - parent::tearDown(); + return new CacheLockDriver(new ArrayCache()); } public function testLockTTL() diff --git a/tests/src/Core/Lock/LockTest.php b/tests/src/Core/Lock/LockTest.php index 9698f0bdea..a7bbea265f 100644 --- a/tests/src/Core/Lock/LockTest.php +++ b/tests/src/Core/Lock/LockTest.php @@ -19,6 +19,7 @@ abstract class LockTest extends DatabaseTest { parent::setUp(); $this->instance = $this->getInstance(); + $this->instance->releaseAll(); // Reusable App object $this->app = BaseObject::getApp(); @@ -31,11 +32,18 @@ abstract class LockTest extends DatabaseTest Config::set('system', 'theme', 'system_theme'); } + protected function tearDown() + { + parent::tearDown(); + $this->instance->releaseAll(); + } + /** * @small */ public function testLock() { - $this->instance->acquireLock('foo', 1); + $this->assertFalse($this->instance->isLocked('foo')); + $this->assertTrue($this->instance->acquireLock('foo', 1)); $this->assertTrue($this->instance->isLocked('foo')); $this->assertFalse($this->instance->isLocked('bar')); } @@ -44,7 +52,8 @@ abstract class LockTest extends DatabaseTest * @small */ public function testDoubleLock() { - $this->instance->acquireLock('foo', 1); + $this->assertFalse($this->instance->isLocked('foo')); + $this->assertTrue($this->instance->acquireLock('foo', 1)); $this->assertTrue($this->instance->isLocked('foo')); // We already locked it $this->assertTrue($this->instance->acquireLock('foo', 1)); @@ -54,7 +63,8 @@ abstract class LockTest extends DatabaseTest * @small */ public function testReleaseLock() { - $this->instance->acquireLock('foo', 1); + $this->assertFalse($this->instance->isLocked('foo')); + $this->assertTrue($this->instance->acquireLock('foo', 1)); $this->assertTrue($this->instance->isLocked('foo')); $this->instance->releaseLock('foo'); $this->assertFalse($this->instance->isLocked('foo')); @@ -64,9 +74,9 @@ abstract class LockTest extends DatabaseTest * @small */ public function testReleaseAll() { - $this->instance->acquireLock('foo', 1); - $this->instance->acquireLock('bar', 1); - $this->instance->acquireLock('nice', 1); + $this->assertTrue($this->instance->acquireLock('foo', 1)); + $this->assertTrue($this->instance->acquireLock('bar', 1)); + $this->assertTrue($this->instance->acquireLock('nice', 1)); $this->assertTrue($this->instance->isLocked('foo')); $this->assertTrue($this->instance->isLocked('bar')); @@ -83,9 +93,12 @@ abstract class LockTest extends DatabaseTest * @small */ public function testReleaseAfterUnlock() { - $this->instance->acquireLock('foo', 1); - $this->instance->acquireLock('bar', 1); - $this->instance->acquireLock('nice', 1); + $this->assertFalse($this->instance->isLocked('foo')); + $this->assertFalse($this->instance->isLocked('bar')); + $this->assertFalse($this->instance->isLocked('nice')); + $this->assertTrue($this->instance->acquireLock('foo', 1)); + $this->assertTrue($this->instance->acquireLock('bar', 1)); + $this->assertTrue($this->instance->acquireLock('nice', 1)); $this->instance->releaseLock('foo'); @@ -103,10 +116,12 @@ abstract class LockTest extends DatabaseTest * @medium */ function testLockTTL() { + $this->assertFalse($this->instance->isLocked('foo')); + $this->assertFalse($this->instance->isLocked('bar')); // 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 - $this->instance->acquireLock('foo', 1, 1); - $this->instance->acquireLock('bar', 1, 3); + $this->assertTrue($this->instance->acquireLock('foo', 2, 1)); + $this->assertTrue($this->instance->acquireLock('bar', 2, 3)); $this->assertTrue($this->instance->isLocked('foo')); $this->assertTrue($this->instance->isLocked('bar')); diff --git a/tests/src/Core/Lock/MemcacheCacheLockDriverTest.php b/tests/src/Core/Lock/MemcacheCacheLockDriverTest.php index c54cf9c599..ca9b9b4639 100644 --- a/tests/src/Core/Lock/MemcacheCacheLockDriverTest.php +++ b/tests/src/Core/Lock/MemcacheCacheLockDriverTest.php @@ -3,7 +3,6 @@ namespace Friendica\Test\src\Core\Lock; - use Friendica\Core\Cache\CacheDriverFactory; use Friendica\Core\Lock\CacheLockDriver; @@ -12,20 +11,8 @@ use Friendica\Core\Lock\CacheLockDriver; */ class MemcacheCacheLockDriverTest extends LockTest { - /** - * @var \Friendica\Core\Cache\IMemoryCacheDriver - */ - private $cache; - protected function getInstance() { - $this->cache = CacheDriverFactory::create('memcache'); - return new CacheLockDriver($this->cache); - } - - public function tearDown() - { - $this->cache->clear(); - parent::tearDown(); + return new CacheLockDriver(CacheDriverFactory::create('memcache')); } } diff --git a/tests/src/Core/Lock/MemcachedCacheLockDriverTest.php b/tests/src/Core/Lock/MemcachedCacheLockDriverTest.php index 27886261b2..71311d5baa 100644 --- a/tests/src/Core/Lock/MemcachedCacheLockDriverTest.php +++ b/tests/src/Core/Lock/MemcachedCacheLockDriverTest.php @@ -3,7 +3,6 @@ namespace Friendica\Test\src\Core\Lock; - use Friendica\Core\Cache\CacheDriverFactory; use Friendica\Core\Lock\CacheLockDriver; @@ -12,20 +11,8 @@ use Friendica\Core\Lock\CacheLockDriver; */ class MemcachedCacheLockDriverTest extends LockTest { - /** - * @var \Friendica\Core\Cache\IMemoryCacheDriver - */ - private $cache; - protected function getInstance() { - $this->cache = CacheDriverFactory::create('memcached'); - return new CacheLockDriver($this->cache); - } - - public function tearDown() - { - $this->cache->clear(); - parent::tearDown(); + return new CacheLockDriver(CacheDriverFactory::create('memcached')); } } diff --git a/tests/src/Core/Lock/RedisCacheLockDriverTest.php b/tests/src/Core/Lock/RedisCacheLockDriverTest.php index eaafbf4e44..43cedb9cbc 100644 --- a/tests/src/Core/Lock/RedisCacheLockDriverTest.php +++ b/tests/src/Core/Lock/RedisCacheLockDriverTest.php @@ -3,7 +3,6 @@ namespace Friendica\Test\src\Core\Lock; - use Friendica\Core\Cache\CacheDriverFactory; use Friendica\Core\Lock\CacheLockDriver; @@ -12,21 +11,9 @@ use Friendica\Core\Lock\CacheLockDriver; */ class RedisCacheLockDriverTest extends LockTest { - /** - * @var \Friendica\Core\Cache\IMemoryCacheDriver - */ - private $cache; - protected function getInstance() { - $this->cache = CacheDriverFactory::create('redis'); - return new CacheLockDriver($this->cache); + return new CacheLockDriver(CacheDriverFactory::create('redis')); } - - public function tearDown() - { - $this->cache->clear(); - parent::tearDown(); - } } diff --git a/tests/src/Core/Lock/SemaphoreLockDriverTest.php b/tests/src/Core/Lock/SemaphoreLockDriverTest.php index cd4b915733..39f0763fb1 100644 --- a/tests/src/Core/Lock/SemaphoreLockDriverTest.php +++ b/tests/src/Core/Lock/SemaphoreLockDriverTest.php @@ -2,26 +2,13 @@ namespace Friendica\Test\src\Core\Lock; - use Friendica\Core\Lock\SemaphoreLockDriver; class SemaphoreLockDriverTest extends LockTest { - /** - * @var \Friendica\Core\Lock\SemaphoreLockDriver - */ - private $semaphoreLockDriver; - protected function getInstance() { - $this->semaphoreLockDriver = new SemaphoreLockDriver(); - return $this->semaphoreLockDriver; - } - - public function tearDown() - { - $this->semaphoreLockDriver->releaseAll(); - parent::tearDown(); + return new SemaphoreLockDriver(); } function testLockTTL()