import { defineConfig } from "vitest/config"; const testEnv = { NODE_ENV: "test", APP_ROLE: "web", BASE_URL: "http://localhost:3000", DATABASE_URL: process.env.TEST_DATABASE_URL ?? "postgresql://homix:homix@localhost:5434/homix_marketing?schema=public", DIRECT_DATABASE_URL: process.env.TEST_DATABASE_URL ?? "postgresql://homix:homix@localhost:5434/homix_marketing?schema=public", AUTH_MODE: "local", LOCAL_ADMIN_EMAIL: "admin@homixny.com", SESSION_SECRET: "test-session-secret-at-least-sixteen-bytes", EMAIL_PROVIDER: "fake", EMAIL_DELIVERY_MODE: process.env.TEST_DELIVERY_MODE ?? "disabled", EMAIL_TEST_ALLOWLIST: "admin@homixny.com", STORAGE_PROVIDER: "local", LOCAL_ASSET_DIR: "./data/test-assets", PUBLIC_ASSET_BASE_URL: "http://localhost:3000/public/assets", COMPANY_POSTAL_ADDRESS: "123 Main Street, Huntington, NY 11743", UNSUBSCRIBE_SIGNING_SECRET: "test-unsubscribe-secret-at-least-thirty-two-bytes", ONEKEY_PROVIDER: "fake", AI_PROVIDER: "fake", }; export default defineConfig({ esbuild: { jsx: "automatic" }, test: { environment: "node", env: testEnv, coverage: { provider: "v8", reportsDirectory: "coverage/services", include: [ "src/modules/campaigns/service.ts", "src/modules/delivery/service.ts", "src/modules/imports/service.ts", "src/modules/webhooks/service.ts", ], thresholds: { statements: 80, branches: 80, functions: 80, lines: 80, perFile: true, }, }, }, });