Files
hapi/cli/vitest.config.ts
T
ee8802784d merge: hapi upstream main 2026-10-19 (34 commits past v0.30.7)
Bring in the post-0.30.7 upstream work while keeping local team, macaron,
requirement, DSH and deployment features:

- runner/hub: cross-platform orphan reap on archive and tracking loss,
  machine-spawn preallocated stubs, keepalive-only sessions reconcile to idle
- hub: prepared-statement cache, stale/canceled permission request handling
- cli: Codex compaction announcements, dynamic Kimi models, MCP bridge reap
- web: session toolbar icon shedding, mark-all-read, unread/active sections,
  Russian locale, external-link preference, 48px search chrome
- ios/android: locale and font-size updates

Conflict resolution keeps local-only behavior (agent team spawns, macaron
skins, collapsible sidebar, workspace markdown images) layered on the new
upstream toolbar and session lifecycle plumbing.

Test infrastructure: skip the Docker-only pwsh integration test quickly when
Docker is unavailable, and exclude the Bun-only usageScan test from vitest.

via [HAPI](https://hapi.run)

Co-Authored-By: HAPI <noreply@hapi.run>
Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-23 12:44:05 +08:00

40 lines
1.3 KiB
TypeScript

import { defineConfig } from 'vitest/config'
import { resolve } from 'node:path'
export default defineConfig({
test: {
globals: false,
environment: 'node',
include: ['src/**/*.test.ts', 'scripts/**/*.test.ts'],
exclude: [
// Runner integration tests spawn real detached runner/session
// process trees and must run serially through the dedicated
// integration project (`bun run test:integration`, see
// vitest.integration.config.ts), not inside the parallel
// unit-test suite.
'**/runner.integration.test.ts',
// Bun-only (`bun:test` + `bun:sqlite`); run with
// `bun test src/commands/usageScan.test.ts`.
'src/commands/usageScan.test.ts',
],
globalSetup: './src/test/globalSetup.ts',
setupFiles: './src/test/setup.ts',
coverage: {
provider: 'v8',
reporter: ['text', 'json', 'html'],
exclude: [
'node_modules/**',
'dist/**',
'**/*.d.ts',
'**/*.config.*',
'**/mockData/**',
],
},
},
resolve: {
alias: {
'@': resolve('./src'),
},
},
})