Confirmations : tests de comportement des quatre sites tenus par la seule garde (suivi de la PR #465) #467

Open
opened 2026-10-18 18:32:00 +00:00 by maximus · 0 comments
Owner

Suggestion 2 de la revue de la PR #465 (commentaire 24953), non bloquante.

Après #421, seuls deux sites de confirmation ont un test de comportement (« Annuler » laisse les données intactes, « Confirmer » agit) : la suppression d'un profil (ProfileFormModal.delete.test.ts) et le retrait de la clé de licence (useLicenseMachines.test.ts). Les quatre autres ne sont tenus que par src/__integration__/native-dialog-guard.test.ts, qui vérifie l'await, pas ce que fait le gestionnaire après la réponse :

  • CategoryDetailPanel.tsx (suppression d'une catégorie)
  • AdjustmentDetailPanel.tsx (suppression d'un ajustement)
  • TemplateActions.tsx (suppression d'un gabarit de budget, e.stopPropagation() avant l'attente)
  • AccountsPage.tsx (suppression d'une catégorie du Bilan, contrôle des comptes liés avant la boîte)

Piste : le même patron que ProfileFormModal.delete.test.ts (harnais hookHarness, confirmService mocké, clic par les props), un refus puis une acceptation par site. Pour AccountsPage, vérifier aussi qu'une catégorie avec des comptes liés n'ouvre pas la boîte.

Critères d'acceptation

  • Un test par site : confirmation refusée, aucun appel à la suppression ; acceptée, suppression appelée avec le bon identifiant.
  • Retirer l'await d'un site fait rougir son test, en plus de la garde.
Suggestion 2 de la revue de la PR #465 (commentaire 24953), non bloquante. Après #421, seuls deux sites de confirmation ont un test de comportement (« Annuler » laisse les données intactes, « Confirmer » agit) : la suppression d'un profil (`ProfileFormModal.delete.test.ts`) et le retrait de la clé de licence (`useLicenseMachines.test.ts`). Les quatre autres ne sont tenus que par `src/__integration__/native-dialog-guard.test.ts`, qui vérifie l'`await`, pas ce que fait le gestionnaire après la réponse : - `CategoryDetailPanel.tsx` (suppression d'une catégorie) - `AdjustmentDetailPanel.tsx` (suppression d'un ajustement) - `TemplateActions.tsx` (suppression d'un gabarit de budget, `e.stopPropagation()` avant l'attente) - `AccountsPage.tsx` (suppression d'une catégorie du Bilan, contrôle des comptes liés avant la boîte) Piste : le même patron que `ProfileFormModal.delete.test.ts` (harnais `hookHarness`, `confirmService` mocké, clic par les props), un refus puis une acceptation par site. Pour `AccountsPage`, vérifier aussi qu'une catégorie avec des comptes liés n'ouvre pas la boîte. ## Critères d'acceptation - [ ] Un test par site : confirmation refusée, aucun appel à la suppression ; acceptée, suppression appelée avec le bon identifiant. - [ ] Retirer l'`await` d'un site fait rougir son test, en plus de la garde.
maximus added the
status:triage
type:refactor
source:human
labels 2026-10-18 18:32:08 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: maximus/Simpl-Resultat#467
No description provided.