PD-238 — Revue des Tests (v2 - Corrections post-gate)¶
Résumé¶
| Critère | Statut |
|---|---|
| Suppression ECT-04 | ✅ |
| Assertions ECT-06 | ✅ |
| Correction mocks | ✅ |
| Couverture maintenue | ✅ |
Verdict : ✅ CONFORME
Points positifs¶
- Suppression des tests
constantTimeEqualcohérente avec l’usage decrypto.timingSafeEqual(primitive native fiable). - Assertions unifiées vers
INVALID_CREDENTIALS, conforme à l’objectif anti‑énumération. - Correction de
mockResolvedValue→mockReturnValuepour une méthode synchrone évite des faux positifs. - Nommage et structure Jest (describe/it) clairs et alignés sur TC‑ERR‑13 / TC‑INV‑01.
Points à améliorer¶
| ID | Description | Gravité |
|---|---|---|
| — | Aucun écart résiduel identifié sur les corrections demandées. | — |
Analyse détaillée¶
Suppression tests constantTimeEqual¶
- Justifiée : la méthode custom n’existe plus et la primitive native ne nécessite pas de test unitaire interne.
- Pas de perte de couverture métier : les tests d’auth/reauth continuent de valider les comportements attendus.
Assertions INVALID_CREDENTIALS¶
- Alignement correct sur la règle ECT‑06 (raison unique pour éviter l’énumération).
- Les assertions vérifient bien l’événement
emitSensitiveActionBlockedavec la nouvelle raison.
Correction mockReturnValue¶
- Appropriée pour
verifyPasswordsynchrone : la promesse implicite demockResolvedValuepouvait masquer des erreurs. - Les tests restent déterministes et valident l’absence de JWT en cas d’échec.