repositories / pi-ext
pi-ext
bugabingas pi extensions
owned by admin
vitest.config.ts
Rawimport { defineConfig } from "vitest/config";
const include = [
"extensions/**/__tests__/**/*.test.ts",
"scripts/**/*.test.ts",
"skills/**/*.test.ts",
];
const exclude = ["**/__e2e__/**", "**/node_modules/**"];
const validatorTests = [
"extensions/ultra/__tests__/dynamic-extensions.test.ts",
"scripts/prompt-composition.test.ts",
];
export default defineConfig({
test: {
reporters: ["minimal"],
testTimeout: 30_000,
hookTimeout: 30_000,
projects: [
{
extends: true,
test: {
name: "fast",
include,
exclude: [
...exclude,
"extensions/web/**",
"extensions/strata/**",
...validatorTests,
],
isolate: false,
// Three fork workers avoid CPU/process contention.
maxWorkers: 3,
},
},
{
extends: true,
test: {
name: "web",
include: ["extensions/web/**/__tests__/**/*.test.ts"],
exclude,
isolate: true,
maxWorkers: 1,
},
},
{
extends: true,
test: {
name: "strata",
include: ["extensions/strata/**/__tests__/**/*.test.ts"],
exclude,
// Each file owns its filesystem mocks and fake-command environment.
isolate: true,
maxWorkers: 1,
},
},
{
extends: true,
test: {
name: "validator",
include: validatorTests,
exclude,
isolate: true,
maxWorkers: 1,
// Real child validators retain their production watchdog without
// competing with the other projects' native subprocess tests.
sequence: { groupOrder: 1 },
},
},
],
},
});