feat(test): add comprehensive test suite and testing infrastructure
- Add vitest configuration with coverage reporting - Create test setup file with DOM mocks - Add tests for state management, helpers, and tool configurations - Update tsconfig and package.json for testing support - Clean up unused comments and improve code style
This commit is contained in:
55
vitest.config.ts
Normal file
55
vitest.config.ts
Normal file
@@ -0,0 +1,55 @@
|
||||
import { defineConfig } from 'vitest/config';
|
||||
import { resolve } from 'path';
|
||||
|
||||
export default defineConfig({
|
||||
test: {
|
||||
// Enable global test APIs (describe, it, expect, etc.)
|
||||
globals: true,
|
||||
|
||||
// Simulate browser environment
|
||||
environment: 'jsdom',
|
||||
|
||||
// Setup files to run before tests
|
||||
setupFiles: ['./src/tests/setup.ts'],
|
||||
|
||||
// Coverage configuration
|
||||
coverage: {
|
||||
provider: 'v8',
|
||||
reporter: ['text', 'json', 'html', 'lcov'],
|
||||
reportsDirectory: './coverage',
|
||||
exclude: [
|
||||
'node_modules/',
|
||||
'src/tests/',
|
||||
'dist/',
|
||||
'*.config.ts',
|
||||
'*.config.js',
|
||||
'**/*.d.ts',
|
||||
'public/',
|
||||
'scripts/',
|
||||
],
|
||||
// Set thresholds (optional)
|
||||
thresholds: {
|
||||
lines: 80,
|
||||
functions: 80,
|
||||
branches: 80,
|
||||
statements: 80,
|
||||
},
|
||||
},
|
||||
|
||||
// Include/exclude patterns
|
||||
include: ['src/**/*.{test,spec}.{js,ts}'],
|
||||
exclude: ['node_modules', 'dist', '.idea', '.git', '.cache'],
|
||||
|
||||
// Test timeout
|
||||
testTimeout: 10000,
|
||||
|
||||
// Watch options
|
||||
watch: false,
|
||||
},
|
||||
|
||||
resolve: {
|
||||
alias: {
|
||||
'@': resolve(__dirname, './src'),
|
||||
},
|
||||
},
|
||||
});
|
||||
Reference in New Issue
Block a user