markTestSkipped('Set RUN_INTEGRATION_TESTS=1 to run DB integration tests.'); } $host = getenv('CONFIG_DB_HOST') ?: null; $user = getenv('CONFIG_DB_USER') ?: null; $password = getenv('CONFIG_DB_PASSWORD') ?: ''; $database = getenv('CONFIG_DB_DATABASE') ?: null; if (!$host || !$user || !$database) { test()->markTestSkipped('Missing DB env vars: CONFIG_DB_HOST/CONFIG_DB_USER/CONFIG_DB_DATABASE.'); } app_require('classes/db.php'); $GLOBALS['response'] = new class { public function internal_server_error(string $message): void { throw new RuntimeException($message); } }; $db = new db([ 'host' => $host, 'user' => $user, 'password' => $password, 'database' => $database, ]); $db->connect(); expect($db->conn())->toBeInstanceOf(mysqli::class); expect($db->conn()->connect_errno)->toBe(0); $db->close(); });