]> git.mxchange.org Git - friendica.git/blobdiff - tests/functional/DependencyCheckTest.php
Merge pull request #8053 from nupplaphil/task/remove_get_app
[friendica.git] / tests / functional / DependencyCheckTest.php
index 9fe469d5e88f29140a5a8342eb0724f30270fec2..4e05845f29cb3de682171e3916e4cb78b638af2d 100644 (file)
@@ -4,8 +4,11 @@ namespace functional;
 
 use Dice\Dice;
 use Friendica\App;
+use Friendica\Core\Cache\ICache;
+use Friendica\Core\Cache\IMemoryCache;
 use Friendica\Core\Config\Cache\ConfigCache;
-use Friendica\Core\Config\Configuration;
+use Friendica\Core\Config\IConfiguration;
+use Friendica\Core\Lock\ILock;
 use Friendica\Database\Database;
 use Friendica\Test\Util\VFSTrait;
 use Friendica\Util\BasePath;
@@ -29,8 +32,8 @@ class dependencyCheck extends TestCase
 
                $this->setUpVfsDir();
 
-               $this->dice = new Dice();
-               $this->dice = $this->dice->addRules(include __DIR__ . '/../../static/dependencies.config.php');
+               $this->dice = (new Dice())
+                       ->addRules(include __DIR__ . '/../../static/dependencies.config.php');
        }
 
        /**
@@ -84,7 +87,7 @@ class dependencyCheck extends TestCase
                ]);
 
                // create new DI-library because of shared instance rule (so the Profiler wouldn't get created twice)
-               $this->dice = new Dice(include __DIR__ . '/../../static/dependencies.config.php');
+               $this->dice = new Dice();
                $profiler = $this->dice->create(Profiler::class, [$configCache]);
 
                $this->assertInstanceOf(Profiler::class, $profiler);
@@ -112,10 +115,10 @@ class dependencyCheck extends TestCase
 
        public function testConfiguration()
        {
-               /** @var Configuration $config */
-               $config = $this->dice->create(Configuration::class);
+               /** @var IConfiguration $config */
+               $config = $this->dice->create(IConfiguration::class);
 
-               $this->assertInstanceOf(Configuration::class, $config);
+               $this->assertInstanceOf(IConfiguration::class, $config);
 
                $this->assertNotEmpty($config->get('database', 'username'));
        }
@@ -130,9 +133,38 @@ class dependencyCheck extends TestCase
 
        public function testDevLogger()
        {
+               /** @var IConfiguration $config */
+               $config = $this->dice->create(IConfiguration::class);
+               $config->set('system', 'dlogfile', $this->root->url() . '/friendica.log');
+
                /** @var LoggerInterface $logger */
                $logger = $this->dice->create('$devLogger', ['dev']);
 
-               self::assertInstanceOf(LoggerInterface::class, $logger);
+               $this->assertInstanceOf(LoggerInterface::class, $logger);
+       }
+
+       public function testCache()
+       {
+               /** @var ICache $cache */
+               $cache = $this->dice->create(ICache::class);
+
+               $this->assertInstanceOf(ICache::class, $cache);
+       }
+
+       public function testMemoryCache()
+       {
+               /** @var IMemoryCache $cache */
+               $cache = $this->dice->create(IMemoryCache::class);
+
+               // We need to check "just" ICache, because the default Cache is DB-Cache, which isn't a memorycache
+               $this->assertInstanceOf(ICache::class, $cache);
+       }
+
+       public function testLock()
+       {
+               /** @var ILock $cache */
+               $lock = $this->dice->create(ILock::class);
+
+               $this->assertInstanceOf(ILock::class, $lock);
        }
 }