import { connect } from "@stc/db"; export const PG = process.env.STC_TEST_PG_URL; /** A fresh Postgres schema (search_path in the URL), dropped by `drop()`. Same isolation as packages/db's forEachDb. */ export async function pgSchema(base: string): Promise<{ url: string; drop(): Promise }> { const schema = `t_${Bun.randomUUIDv7().replaceAll("-", "")}`; const admin = await connect(base); await admin.sql.unsafe(`CREATE SCHEMA ${schema}`); const u = new URL(base); u.searchParams.set("options", `-c search_path=${schema}`); return { url: u.toString(), drop: async () => { await admin.sql.unsafe(`DROP SCHEMA ${schema} CASCADE`); await admin.close(); } }; }