import { defineConfig } from "vitest/config"; export default defineConfig({ test: { globals: false, environment: "node", pool: "forks", include: ["src/**/*.test.ts", "tests/**/*.test.ts"], exclude: ["src/__benchmarks__/**", "dist/**", "node_modules/**"], coverage: { provider: "istanbul", reporter: ["text", "html", "lcov"], include: ["src/**/*.ts"], exclude: [ "src/**/*.test.ts", "src/**/*.bench.ts", "src/**/*.types.ts", "src/**/index.ts", "src/__benchmarks__/**", "tests/**", // Side-effect direct-invocation entry: only triggers when invoked // via the `#!/usr/bin/env node` shebang. Every branch is a // `process.argv` predicate or a `process.exit` side effect and // cannot be honestly exercised from in-process. The `main()` // function it boots is fully covered by the suites in src/bin/. "src/bin/auto-boot.ts", ], thresholds: { statements: 100, branches: 100, functions: 100, lines: 100, }, }, testTimeout: 5000, }, });