Backend (pytest, 430 tests, 71% coverage): - Auth: login/logout, decorators, permissions, VELA escalation, row filtering - Projects: CRUD, membership management, billing warnings, Keycloak mocks - Users: CRUD, Keycloak sync/disable mocks, membership cleanup - Licenses: CRUD, file upload/download, extension validation, status property - Certs: CRUD, X.509 import/export (real crypto), cert_utils, encryption - Dashboard: stats aggregation, expiring items, user-scoped filtering - Feedback: CRUD, status workflow, screenshot storage - Settings: model, thresholds, batch update, SMTP, backup Frontend (vitest + testing-library + MSW, 69 tests): - Auth context: state, login/logout, permission helpers - React Query hooks: useProjects, useUsers with MSW mocking - Components: status-badge, confirm-dialog, data-table, stat-card - API client: axios config validation Also fixes Decimal serialization bug in audit.py log_audit(). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
25 lines
618 B
TypeScript
25 lines
618 B
TypeScript
import { defineConfig } from 'vitest/config'
|
|
import react from '@vitejs/plugin-react'
|
|
import tailwindcss from '@tailwindcss/vite'
|
|
import path from 'path'
|
|
|
|
export default defineConfig({
|
|
plugins: [react(), tailwindcss()],
|
|
resolve: {
|
|
alias: {
|
|
'@': path.resolve(__dirname, './src'),
|
|
},
|
|
},
|
|
test: {
|
|
globals: true,
|
|
environment: 'jsdom',
|
|
setupFiles: ['./src/__tests__/setup.ts'],
|
|
include: ['src/**/*.test.{ts,tsx}'],
|
|
coverage: {
|
|
provider: 'v8',
|
|
include: ['src/**/*.{ts,tsx}'],
|
|
exclude: ['src/components/ui/**', 'src/**/*.test.*', 'src/__tests__/**'],
|
|
},
|
|
},
|
|
})
|