import "../../setup.ts"; import { assertEquals } from "@std/assert"; import { DatabaseSync } from "node:sqlite"; import { up as up0022 } from "../../../db/migrations/0022_reserve_community.ts"; Deno.test("migration 0022 renames a category named community", () => { const db = new DatabaseSync(":memory:"); db.exec(`CREATE TABLE categories (id TEXT PRIMARY KEY, slug TEXT);`); for (const slug of ["community", "community-2", "music"]) { db.prepare(`INSERT INTO categories (id, slug) VALUES (?, ?);`).run( crypto.randomUUID(), slug, ); } up0022(db); up0022(db); // idempotent const slugs = (db.prepare(`SELECT slug FROM categories ORDER BY slug;`) .all() as { slug: string }[]).map((r) => r.slug); assertEquals(slugs, ["community-2", "community-3", "music"]); db.close(); });