91 lines
2.6 KiB
JavaScript
91 lines
2.6 KiB
JavaScript
"use strict";
|
|
/**
|
|
* RuvBot Vitest Configuration
|
|
*
|
|
* Comprehensive testing setup for TDD-driven development
|
|
* Borrowed patterns from Clawdbot and agentic-synth
|
|
*/
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
const config_1 = require("vitest/config");
|
|
const path_1 = require("path");
|
|
exports.default = (0, config_1.defineConfig)({
|
|
test: {
|
|
globals: true,
|
|
environment: 'node',
|
|
// Test file patterns
|
|
include: [
|
|
'tests/**/*.test.ts',
|
|
'tests/**/*.spec.ts'
|
|
],
|
|
exclude: [
|
|
'node_modules/**',
|
|
'dist/**'
|
|
],
|
|
// Coverage configuration
|
|
coverage: {
|
|
provider: 'v8',
|
|
reporter: ['text', 'json', 'html', 'lcov'],
|
|
exclude: [
|
|
'node_modules/**',
|
|
'dist/**',
|
|
'coverage/**',
|
|
'tests/**',
|
|
'**/*.test.ts',
|
|
'**/*.spec.ts',
|
|
'**/*.config.ts',
|
|
'**/*.config.js',
|
|
'benchmarks/**',
|
|
'examples/**',
|
|
'docs/**'
|
|
],
|
|
include: ['src/**/*.ts'],
|
|
all: true,
|
|
lines: 80,
|
|
functions: 80,
|
|
branches: 75,
|
|
statements: 80
|
|
},
|
|
// Timeouts
|
|
testTimeout: 30000,
|
|
hookTimeout: 15000,
|
|
// Setup files
|
|
setupFiles: ['./tests/setup.ts'],
|
|
// Parallel execution
|
|
pool: 'threads',
|
|
poolOptions: {
|
|
threads: {
|
|
singleThread: false,
|
|
maxThreads: 4,
|
|
minThreads: 1
|
|
}
|
|
},
|
|
// Reporter configuration
|
|
reporters: ['verbose'],
|
|
// Retry configuration for flaky tests
|
|
retry: 1,
|
|
// Sequence configuration
|
|
sequence: {
|
|
shuffle: false,
|
|
seed: 42
|
|
},
|
|
// Mock configuration
|
|
clearMocks: true,
|
|
restoreMocks: true,
|
|
mockReset: true,
|
|
// Type checking
|
|
typecheck: {
|
|
enabled: false, // Enable when type definitions are stable
|
|
include: ['tests/**/*.ts']
|
|
}
|
|
},
|
|
resolve: {
|
|
alias: {
|
|
'@': (0, path_1.resolve)(__dirname, './src'),
|
|
'@tests': (0, path_1.resolve)(__dirname, './tests'),
|
|
'@fixtures': (0, path_1.resolve)(__dirname, './tests/fixtures'),
|
|
'@factories': (0, path_1.resolve)(__dirname, './tests/factories'),
|
|
'@mocks': (0, path_1.resolve)(__dirname, './tests/mocks')
|
|
}
|
|
}
|
|
});
|
|
//# sourceMappingURL=vitest.config.js.map
|