X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=tests%2Fsrc%2FCore%2FLock%2FRedisCacheLockTest.php;h=360fa74fb2b1a043d7d25542684d6270e4d22d61;hb=e6c054c27602a3acadac3c423273bdf748fcee27;hp=dab31f5e3c523f834251de2c64f5ba4dd5c84054;hpb=86bf2ee45a7c7409dbc470b5b1706b19e7e40507;p=friendica.git diff --git a/tests/src/Core/Lock/RedisCacheLockTest.php b/tests/src/Core/Lock/RedisCacheLockTest.php index dab31f5e3c..360fa74fb2 100644 --- a/tests/src/Core/Lock/RedisCacheLockTest.php +++ b/tests/src/Core/Lock/RedisCacheLockTest.php @@ -1,39 +1,72 @@ . + * + */ namespace Friendica\Test\src\Core\Lock; +use Exception; use Friendica\Core\Cache\RedisCache; -use Friendica\Core\Config\Configuration; -use Friendica\Core\Lock\CacheLockDriver; +use Friendica\Core\Config\IConfig; +use Friendica\Core\Lock\CacheLock; +use Mockery; /** * @requires extension redis + * @group REDIS */ class RedisCacheLockTest extends LockTest { protected function getInstance() { - $configMock = \Mockery::mock(Configuration::class); + $configMock = Mockery::mock(IConfig::class); + + $host = $_SERVER['REDIS_HOST'] ?? 'localhost'; + $port = $_SERVER['REDIS_PORT'] ?? 6379; $configMock ->shouldReceive('get') ->with('system', 'redis_host') - ->andReturn('localhost'); + ->andReturn($host); $configMock ->shouldReceive('get') ->with('system', 'redis_port') - ->andReturn(null); + ->andReturn($port); $configMock ->shouldReceive('get') ->with('system', 'redis_db', 0) - ->andReturn(3); + ->andReturn(0); $configMock ->shouldReceive('get') ->with('system', 'redis_password') ->andReturn(null); - return new CacheLockDriver(new RedisCache('localhost', $configMock)); + $lock = null; + + try { + $cache = new RedisCache($host, $configMock); + $lock = new CacheLock($cache); + } catch (Exception $e) { + static::markTestSkipped('Redis is not available. Error: ' . $e->getMessage()); + } + + return $lock; } }