Files
openhuman/vitest.config.ts
T
069638a746 Replace Playwright with Appium mac2 + WebDriverIO E2E and add unit tests (#110)
* Replace Playwright with Appium mac2 + WebDriverIO for E2E testing and add unit tests

- Remove Playwright config and old e2e/ directory
- Add WebDriverIO + Appium mac2 driver for true native macOS app testing
- Add wdio.conf.ts with platform-aware app path detection
- Add scripts/e2e.sh to manage Appium lifecycle under Node 24
- Add E2E smoke, navigation, and Tauri integration specs
- Add tsconfig.e2e.json for E2E test TypeScript config
- Add unit tests for components, store slices, selectors, services, and utils
- Add test infrastructure (setup.ts, MSW handlers, test-utils)
- Update vitest.config.ts with coverage thresholds and setup
- Update package.json scripts and dependencies

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

* Update skills submodule to latest

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 00:53:43 +05:30

62 lines
1.4 KiB
TypeScript

import path from "path";
import { defineConfig } from "vitest/config";
import { nodePolyfills } from "vite-plugin-node-polyfills";
export default defineConfig({
plugins: [
nodePolyfills({
include: ["buffer", "process", "util", "os", "crypto", "stream"],
globals: {
Buffer: true,
process: true,
global: true,
},
}),
],
resolve: {
alias: {
buffer: "buffer",
process: "process/browser",
util: "util",
os: "os-browserify/browser",
"@alphahuman/skill-types": path.resolve(
__dirname,
"src/lib/skills/types.ts"
),
},
},
test: {
globals: true,
environment: "jsdom",
mockReset: true,
restoreMocks: true,
setupFiles: ["src/test/setup.ts"],
include: ["src/**/*.test.{ts,tsx}"],
hookTimeout: 30000,
testTimeout: 30000,
coverage: {
provider: "v8",
include: ["src/**/*.{ts,tsx}"],
exclude: [
"src/main.tsx",
"src/vite-env.d.ts",
"src/**/*.d.ts",
"src/test/**",
"src/__tests__/**",
"src/**/__tests__/**",
"src/**/*.test.{ts,tsx}",
"src/**/types.ts",
"src/**/types/*.ts",
"src/types/**",
],
reporter: ["text", "text-summary", "html", "lcov"],
thresholds: {
lines: 90,
statements: 90,
functions: 90,
branches: 85,
},
},
},
});