import path from 'node:path';
import react from '@vitejs/plugin-react';
import { defineConfig } from 'vitest/config';

export default defineConfig({
  plugins: [react()],
  resolve: {
    alias: {
      '@': path.resolve(__dirname, './src'),
    },
  },
  test: {
    environment: 'jsdom',
    globals: true,
    setupFiles: ['./vitest.setup.ts'],
    // e2e/ são specs do Playwright (Tarefa 11) — rodam via `npx playwright
    // test`, nunca pelo Vitest (formatos de `test()`/`test.describe()`
    // incompatíveis entre os dois runners).
    exclude: ['**/node_modules/**', '**/e2e/**'],
    env: {
      // Valores de teste para as env vars obrigatórias (ver src/lib/env.ts) —
      // sem eles, qualquer módulo que importe `env.ts` (ex.: a rota de
      // revalidação) falharia o boot já no import, antes mesmo do teste rodar.
      NEXT_PUBLIC_WP_URL: 'http://loja.brindara.local:8080',
      BRINDARA_REVALIDATE_SECRET: 'test-revalidate-secret',
      NEXT_PUBLIC_SITE_URL: 'http://www.brindara.local:3000',
    },
  },
});
