friendica/tests/src/Core/Lock/RedisCacheLockTest.php

52 lines
1007 B
PHP
Raw Normal View History

<?php
namespace Friendica\Test\src\Core\Lock;
use Friendica\Core\Cache\RedisCache;
use Friendica\Core\Config\IConfiguration;
use Friendica\Core\Lock\CacheLock;
/**
* @requires extension redis
2019-09-23 14:31:13 +02:00
* @group REDIS
*/
class RedisCacheLockTest extends LockTest
{
protected function getInstance()
{
$configMock = \Mockery::mock(IConfiguration::class);
$host = $_SERVER['REDIS_HOST'] ?? 'localhost';
$configMock
->shouldReceive('get')
2019-02-17 21:41:45 +01:00
->with('system', 'redis_host')
->andReturn($host);
$configMock
->shouldReceive('get')
2019-02-17 21:41:45 +01:00
->with('system', 'redis_port')
->andReturn(null);
$configMock
2019-04-20 14:20:31 +02:00
->shouldReceive('get')
->with('system', 'redis_db', 0)
2019-04-20 14:20:31 +02:00
->andReturn(3);
$configMock
2019-04-20 14:20:31 +02:00
->shouldReceive('get')
->with('system', 'redis_password')
->andReturn(null);
$lock = null;
try {
$cache = new RedisCache($host, $configMock);
$lock = new CacheLock($cache);
} catch (\Exception $e) {
$this->markTestSkipped('Redis is not available');
}
return $lock;
}
}