]> git.mxchange.org Git - friendica.git/blobdiff - tests/src/Core/Lock/RedisCacheLockTest.php
Merge pull request #8072 from nupplaphil/task/Cache_to_DI
[friendica.git] / tests / src / Core / Lock / RedisCacheLockTest.php
index 0ebc02160e6a6915055ef34655f9460d5f5cf8ff..bfda18b24d9822e59d065218cf1586b627a53d0c 100644 (file)
@@ -4,22 +4,25 @@
 namespace Friendica\Test\src\Core\Lock;
 
 use Friendica\Core\Cache\RedisCache;
-use Friendica\Core\Config\Configuration;
+use Friendica\Core\Config\IConfiguration;
 use Friendica\Core\Lock\CacheLock;
 
 /**
  * @requires extension redis
+ * @group REDIS
  */
 class RedisCacheLockTest extends LockTest
 {
        protected function getInstance()
        {
-               $configMock = \Mockery::mock(Configuration::class);
+               $configMock = \Mockery::mock(IConfiguration::class);
+
+               $host = $_SERVER['REDIS_HOST'] ?? 'localhost';
 
                $configMock
                        ->shouldReceive('get')
                        ->with('system', 'redis_host')
-                       ->andReturn('localhost');
+                       ->andReturn($host);
                $configMock
                        ->shouldReceive('get')
                        ->with('system', 'redis_port')
@@ -34,6 +37,15 @@ class RedisCacheLockTest extends LockTest
                        ->with('system', 'redis_password')
                        ->andReturn(null);
 
-               return new CacheLock(new RedisCache('localhost', $configMock));
+               $lock = null;
+
+               try {
+                       $cache = new RedisCache($host, $configMock);
+                       $lock = new CacheLock($cache);
+               } catch (\Exception $e) {
+                       $this->markTestSkipped('Redis is not available');
+               }
+
+               return $lock;
        }
 }