Files
Bonsai-webapp/.claude/rules/tests.md
T
2026-05-28 05:39:52 +02:00

1.1 KiB

Règles — Tests

Couverture

  • Tout nouveau fichier .ts doit avoir un fichier .spec.ts correspondant.
  • Maintenir les seuils de couverture définis dans vitest.config.ts : lignes ≥ 90 %, fonctions ≥ 90 %, branches ≥ 80 %, statements ≥ 90 %.

Structure des tests

  • Un describe par classe ou fonction testée.
  • Un it par comportement précis ; le libellé décrit le résultat attendu, pas l'implémentation.
  • Utiliser beforeEach pour le setup commun ; ne pas dupliquer la configuration entre les it.

Mocks

  • Ne pas mocker les dépendances Angular internes (Router, ActivatedRoute) sauf si indispensable.
  • Mocker les services HTTP (*ApiService) avec des réponses fixes via vi.fn().
  • Pour mocker un constructeur (ex. FileReader), utiliser vi.stubGlobal avec une class, pas une arrow function.
  • Appeler vi.unstubAllGlobals() dans afterEach après chaque vi.stubGlobal.

Commandes

  • Lancer tous les tests : npx ng test --watch=false
  • Lancer un fichier précis : npx ng test --watch=false --include="**/mon-fichier.spec.ts"