Next.js 16, Prisma 7, Tailwind 4 und Vitest/Playwright, Konfiguration aus Laufzettel übernommen, weil dort derselbe Stack erprobt ist. Die Farben der Branding-Vorgabe stehen als Tokens in globals.css, das helle Theme setzt dieselben Namen neu. Amber und Rot sind dort abgedunkelt, sonst reicht der Kontrast nicht – ein Test prüft beide Themes gegen 4,5:1. Anmeldung mit lokalem Benutzer, Rolle je Anfrage aus der Datenbank, Audit-Log per Trigger nur anhängbar. Geprüft im gebauten Stand auf 1440 px und 390 px. Closes #001 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
19 lines
685 B
TypeScript
19 lines
685 B
TypeScript
import "dotenv/config";
|
||
|
||
/**
|
||
* Spielt die Migrationen in die Testdatenbank ein. Ohne TEST_DATABASE_URL überspringen sich die
|
||
* Datenbanktests – und sagen das laut, damit ein grüner Lauf nicht mehr verspricht, als er prüft.
|
||
*/
|
||
export default async function aufbau(): Promise<void> {
|
||
const url = process.env["TEST_DATABASE_URL"];
|
||
if (!url) {
|
||
console.warn("\n TEST_DATABASE_URL fehlt – Datenbanktests werden ÜBERSPRUNGEN. Start: pnpm db:up\n");
|
||
return;
|
||
}
|
||
const { execFileSync } = await import("node:child_process");
|
||
execFileSync("pnpm", ["exec", "prisma", "migrate", "deploy"], {
|
||
stdio: "inherit",
|
||
env: { ...process.env, DATABASE_URL: url },
|
||
});
|
||
}
|