X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=tests%2Fsrc%2FCore%2FLock%2FMemcachedCacheLockTest.php;h=f41bf992055417c3f474b505fbbcc0a122506a2c;hb=28864d8fdd032032938327ebd35ffe2d3d0de3b8;hp=8b59f91bb79a14b09f2670cc4fb3b4d71ddd47c7;hpb=4c4ed63dca13cc0382af9020e69980c63f988b47;p=friendica.git diff --git a/tests/src/Core/Lock/MemcachedCacheLockTest.php b/tests/src/Core/Lock/MemcachedCacheLockTest.php index 8b59f91bb7..f41bf99205 100644 --- a/tests/src/Core/Lock/MemcachedCacheLockTest.php +++ b/tests/src/Core/Lock/MemcachedCacheLockTest.php @@ -1,29 +1,70 @@ . + * + */ namespace Friendica\Test\src\Core\Lock; use Friendica\Core\Cache\MemcachedCache; -use Friendica\Core\Config\Configuration; +use Friendica\Core\Config\IConfig; use Friendica\Core\Lock\CacheLock; use Psr\Log\NullLogger; /** * @requires extension memcached + * @group MEMCACHED */ class MemcachedCacheLockTest extends LockTest { protected function getInstance() { - $configMock = \Mockery::mock(Configuration::class); + $configMock = \Mockery::mock(IConfig::class); + + $host = $_SERVER['MEMCACHED_HOST'] ?? 'localhost'; + $port = $_SERVER['MEMCACHED_PORT'] ?? '11211'; $configMock ->shouldReceive('get') ->with('system', 'memcached_hosts') - ->andReturn([0 => 'localhost, 11211']); + ->andReturn([0 => $host . ', ' . $port]); $logger = new NullLogger(); - return new CacheLock(new MemcachedCache('localhost', $configMock, $logger)); + $lock = null; + + try { + $cache = new MemcachedCache($host, $configMock, $logger); + $lock = new CacheLock($cache); + } catch (\Exception $e) { + $this->markTestSkipped('Memcached is not available'); + } + + return $lock; + } + + public function testGetLocks() + { + $this->markTestIncomplete('Race condition because of too fast getLocks() which uses a workaround'); + } + + public function testGetLocksWithPrefix() + { + $this->markTestIncomplete('Race condition because of too fast getLocks() which uses a workaround'); } }