import { defineConfig } from "vitest/config"; /** * Configuration Vitest dédiée aux tests de mutation. * * Stryker recharge l'ensemble des fichiers de test à chaque activation de * mutant. Avec les 11 fichiers de la suite complète, cet amorçage représentait * l'essentiel du temps d'exécution (~270 ms par mutant, alors qu'un test met * ~8 ms). On ne déclare donc ici que les fichiers qui couvrent réellement les * modules mutés — les autres ne feraient qu'être chargés puis ignorés. * * À tenir synchronisé avec le champ `mutate` de stryker.config.json. */ export default defineConfig({ test: { environment: "node", // Voir vitest.mutation.full.config.js pour les mesures : sur un jeu de // fichiers 100 % node, threads sans ré-isolation divise l'overhead // d'amorçage par 8. Ne pas reporter tel quel dans vitest.config.js, qui // contient le test a11y sous jsdom (où ce réglage est plus lent). pool: "threads", poolOptions: { threads: { isolate: false, singleThread: true } }, fileParallelism: false, include: [ "apps/api/test/validate.test.js", "apps/api/test/adminAuth.test.js", ], reporters: ["default"], }, });