chore: import upstream snapshot with attribution
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
// vitest globalSetup — runs once for the whole *.e2e.full.test.ts suite.
|
||||
// Boots one Postgres + Redis + webapp; tests connect to it via the
|
||||
// `baseUrl` / `databaseUrl` values provided to test workers below.
|
||||
//
|
||||
// Each test file recreates its own PrismaClient connected to the shared DB
|
||||
// (PrismaClient instances aren't serialisable across worker boundaries).
|
||||
|
||||
import type { TestProject } from "vitest/node";
|
||||
import { startTestServer, type TestServer } from "@internal/testcontainers/webapp";
|
||||
|
||||
let server: TestServer | undefined;
|
||||
|
||||
export default async function setup(project: TestProject) {
|
||||
server = await startTestServer();
|
||||
project.provide("baseUrl", server.webapp.baseUrl);
|
||||
project.provide("databaseUrl", server.databaseUrl);
|
||||
|
||||
return async () => {
|
||||
await server?.stop().catch(() => {});
|
||||
};
|
||||
}
|
||||
|
||||
declare module "vitest" {
|
||||
export interface ProvidedContext {
|
||||
baseUrl: string;
|
||||
databaseUrl: string;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user