/** * MockDatabaseConnection — in-memory stub for tests. * * Substitutes for DatabaseConnection when better-sqlite3 is unavailable * (e.g. native binary built for wrong platform). * All mutation methods are no-ops; read methods return empty results. */ import { QueryBuilder } from '../../server/domains/shared/utils/QueryBuilder.js'; import { QueryAudit } from '../../server/domains/shared/db/QueryAudit.js'; export class MockDatabaseConnection { private audit = new QueryAudit(); all>(_qb: QueryBuilder): T[] { return []; } get>(_qb: QueryBuilder): T | null { return null; } run(_qb: QueryBuilder): number { return 0; } transaction(fn: () => T): T { return fn(); } raw(): never { throw new Error('MockDatabaseConnection: raw() not available in tests'); } getAudit(): QueryAudit { return this.audit; } clearStatementCache(): void {} printAudit(): void {} }