import { defineConfig } from 'vitest/config'; import { fileURLToPath } from 'node:url'; const r = (p: string) => fileURLToPath(new URL(p, import.meta.url)); export default defineConfig({ resolve: { alias: { // Resolve workspace packages to their TS source so tests run without a // build step. Production builds still go through tsc/dist. '@insignia/iios-contracts': r('./packages/iios-contracts/src/index.ts'), '@insignia/iios-testkit': r('./packages/iios-testkit/src/index.ts'), }, }, test: { include: ['packages/**/src/**/*.{test,spec}.ts', 'test/**/*.{test,spec}.ts'], // DB-backed specs share one Postgres and TRUNCATE between tests. Run every // file in a single worker process, sequentially, so there is no cross-file // race on the shared database. fileParallelism: false, sequence: { concurrent: false }, pool: 'forks', poolOptions: { forks: { singleFork: true } }, }, });