fix(hub): assert DB wipe and single-worker integration tests

Fail fast if TRUNCATE left Organization rows, drop the extra deleteMany
before seed create, and force vitest maxWorkers=1 so forks cannot race
the shared Postgres.
This commit is contained in:
2026-07-30 14:24:05 +08:00
parent 751d0c4100
commit 0f4377f16c
3 changed files with 7 additions and 5 deletions
+5 -3
View File
@@ -69,16 +69,18 @@ export async function resetDb(): Promise<void> {
END IF;
END $$;
`);
const leftover = await prisma.organization.count();
if (leftover !== 0) {
throw new Error(`resetDb truncate left ${leftover} organization row(s)`);
}
await seedTestOrganization();
}
export async function seedTestOrganization(
id: string = DEFAULT_ORG_ID,
slug: string = "test-default",
): Promise<void> {
// Prefer explicit create-after-wipe over upsert: leftover half-states after
// interrupted tests made Prisma upsert hit unique(id) while where saw zero.
await prisma.$transaction(async (tx) => {
await tx.organization.deleteMany({ where: { OR: [{ id }, { slug }] } });
await tx.organization.create({
data: {
id,
+1
View File
@@ -7,6 +7,7 @@ export default defineConfig({
// concurrent truncate/insert races. Unit tests are fast either way.
pool: "forks",
fileParallelism: false,
maxWorkers: 1,
env: { NODE_ENV: "test" },
},
});