Ctrl K
ComunidadGuías…

vitest.integration.config.ts

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
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,
      },
    },
  },
});