markTestSkipped( 'The Mysql extension is not available.' ); return; } self::assertInstanceOf( MysqlConnection::class, ConnectionFactory::create($GLOBALS['CONFIG']['db']['core']['masters']['admin']) ); } public function testCreatePostgres() : void { if (!extension_loaded('pdo_pgsql')) { $this->markTestSkipped( 'The Postresql extension is not available.' ); return; } self::assertInstanceOf( PostgresConnection::class, ConnectionFactory::create($GLOBALS['CONFIG']['db']['core']['postgresql']['admin']) ); } public function testCreateSqlsrv() : void { if (!extension_loaded('pdo_sqlsrv')) { $this->markTestSkipped( 'The Sqlsrv extension is not available.' ); return; } self::assertInstanceOf( SqlServerConnection::class, ConnectionFactory::create($GLOBALS['CONFIG']['db']['core']['mssql']['admin']) ); } public function testCreateSqlite() : void { if (!extension_loaded('pdo_sqlite')) { $this->markTestSkipped( 'The SQLite extension is not available.' ); return; } self::assertInstanceOf( SQLiteConnection::class, ConnectionFactory::create($GLOBALS['CONFIG']['db']['core']['sqlite']['admin']) ); } public function testInvalidDatabaseType() : void { self::expectedException(\InvalidArgumentException::class); ConnectionFactory::create(['db' => 'invalid']); } }