X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=tests%2Ffunctional%2FDependencyCheckTest.php;h=f3bc4842725d02666001b9f3c5fb0ab4ae598366;hb=89e74202371c4e3b37488e1251818e8fcf3287fe;hp=da7103e43bc7ee8f1e2342e46b1ebe84e154bc13;hpb=ff6ab4caa39e2b7b343d955a1bb685c4b402c161;p=friendica.git diff --git a/tests/functional/DependencyCheckTest.php b/tests/functional/DependencyCheckTest.php index da7103e43b..f3bc484272 100644 --- a/tests/functional/DependencyCheckTest.php +++ b/tests/functional/DependencyCheckTest.php @@ -1,6 +1,6 @@ setUpVfsDir(); - - $this->dice = (new Dice()) - ->addRules(include __DIR__ . '/../../static/dependencies.config.php'); + /** @var IManageConfigValues $config */ + $config = $this->dice->create(IManageConfigValues::class); + $config->set('system', 'logfile', $this->root->url() . '/logs/friendica.log'); } /** @@ -65,6 +54,9 @@ class DependencyCheckTest extends TestCase self::assertInstanceOf(BasePath::class, $basePath); self::assertEquals($this->root->url(), $basePath->getPath()); + + /** @var Database $dba */ + $dba = $this->dice->create(Database::class); } /** @@ -73,46 +65,19 @@ class DependencyCheckTest extends TestCase */ public function testConfigFileLoader() { - /** @var ConfigFileLoader $configFileLoader */ - $configFileLoader = $this->dice->create(ConfigFileLoader::class); + /** @var ConfigFileManager $configFileManager */ + $configFileManager = $this->dice->create(ConfigFileManager::class); - self::assertInstanceOf(ConfigFileLoader::class, $configFileLoader); + self::assertInstanceOf(ConfigFileManager::class, $configFileManager); $configCache = new Cache(); - $configFileLoader->setupCache($configCache); + $configFileManager->setupCache($configCache); self::assertNotEmpty($configCache->getAll()); self::assertArrayHasKey('database', $configCache->getAll()); self::assertArrayHasKey('system', $configCache->getAll()); } - /** - * Test the construction of a profiler class with DI - */ - public function testProfiler() - { - /** @var Profiler $profiler */ - $profiler = $this->dice->create(Profiler::class); - - self::assertInstanceOf(Profiler::class, $profiler); - - $configCache = new Cache([ - 'system' => [ - 'profiler' => true, - ], - 'rendertime' => [ - 'callstack' => true, - ] - ]); - - // create new DI-library because of shared instance rule (so the Profiler wouldn't get created twice) - $this->dice = new Dice(); - $profiler = $this->dice->create(Profiler::class, [$configCache]); - - self::assertInstanceOf(Profiler::class, $profiler); - self::assertTrue($profiler->isRendertime()); - } - public function testDatabase() { /** @var Database $database */ @@ -123,14 +88,20 @@ class DependencyCheckTest extends TestCase self::assertNotNull($database->getConnection(), 'There is no database connection'); $result = $database->p("SELECT 1"); - self::assertEquals($database->errorMessage(), '', 'There had been a database error message'); - self::assertEquals($database->errorNo(), 0, 'There had been a database error number'); + self::assertEquals('', $database->errorMessage(), 'There had been a database error message'); + self::assertEquals(0, $database->errorNo(), 'There had been a database error number'); self::assertTrue($database->connected(), 'The database is not connected'); } public function testAppMode() { + // PDO needs to be disabled for PHP 7.2, see https://jira.mariadb.org/browse/MDEV-24121 + if (version_compare(PHP_VERSION, '7.3') < 0) { + $configCache = $this->dice->create(Cache::class); + $configCache->set('database', 'disable_pdo', true); + } + /** @var App\Mode $mode */ $mode = $this->dice->create(App\Mode::class); @@ -138,7 +109,6 @@ class DependencyCheckTest extends TestCase self::assertTrue($mode->has(App\Mode::LOCALCONFIGPRESENT), 'No local config present'); self::assertTrue($mode->has(App\Mode::DBAVAILABLE), 'Database is not available'); - self::assertTrue($mode->has(App\Mode::DBCONFIGAVAILABLE), 'Database config is not available'); self::assertTrue($mode->has(App\Mode::MAINTENANCEDISABLED), 'In maintenance mode'); self::assertTrue($mode->isNormal(), 'Not in normal mode'); @@ -146,10 +116,10 @@ class DependencyCheckTest extends TestCase public function testConfiguration() { - /** @var IConfig $config */ - $config = $this->dice->create(IConfig::class); + /** @var IManageConfigValues $config */ + $config = $this->dice->create(IManageConfigValues::class); - self::assertInstanceOf(IConfig::class, $config); + self::assertInstanceOf(IManageConfigValues::class, $config); self::assertNotEmpty($config->get('database', 'username')); } @@ -157,15 +127,15 @@ class DependencyCheckTest extends TestCase public function testLogger() { /** @var LoggerInterface $logger */ - $logger = $this->dice->create(LoggerInterface::class, ['test']); + $logger = $this->dice->create(LoggerInterface::class, [['$channel' => 'test']]); self::assertInstanceOf(LoggerInterface::class, $logger); } public function testDevLogger() { - /** @var IConfig $config */ - $config = $this->dice->create(IConfig::class); + /** @var IManageConfigValues $config */ + $config = $this->dice->create(IManageConfigValues::class); $config->set('system', 'dlogfile', $this->root->url() . '/friendica.log'); /** @var LoggerInterface $logger */ @@ -176,26 +146,27 @@ class DependencyCheckTest extends TestCase public function testCache() { - /** @var ICache $cache */ - $cache = $this->dice->create(ICache::class); + /** @var ICanCache $cache */ + $cache = $this->dice->create(ICanCache::class); + - self::assertInstanceOf(ICache::class, $cache); + self::assertInstanceOf(ICanCache::class, $cache); } public function testMemoryCache() { - /** @var IMemoryCache $cache */ - $cache = $this->dice->create(IMemoryCache::class); + /** @var ICanCacheInMemory $cache */ + $cache = $this->dice->create(ICanCacheInMemory::class); // We need to check "just" ICache, because the default Cache is DB-Cache, which isn't a memorycache - self::assertInstanceOf(ICache::class, $cache); + self::assertInstanceOf(ICanCache::class, $cache); } public function testLock() { - /** @var ILock $cache */ - $lock = $this->dice->create(ILock::class); + /** @var ICanLock $cache */ + $lock = $this->dice->create(ICanLock::class); - self::assertInstanceOf(ILock::class, $lock); + self::assertInstanceOf(ICanLock::class, $lock); } }