d70c7ea47b
Contract (capability incl. requiresFollowupFetch seam, verifySignature, normalize, fetch?, send), HMAC-SHA256 sign/verify (timing-safe), reference WebhookAdapter (normalize→IngestInteractionRequest), SandboxSink (no network), email/whatsapp fixtures. CJS build (consumed by the NestJS service). 4 tests; boundary updated. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
27 lines
1.0 KiB
TypeScript
27 lines
1.0 KiB
TypeScript
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'),
|
|
'@insignia/iios-adapter-sdk': r('./packages/iios-adapter-sdk/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 } },
|
|
},
|
|
});
|