- Durée ajoutée automatiquement au temps travaillé de chaque jour d'astreinte - déclaré (bouton AS), en plus des interventions saisies. Elle compte dans - le bilan de la semaine ; le lendemain de l'astreinte n'est pas concerné. + Durée forfaitaire attribuée à chaque jour d'astreinte déclaré (bouton AS), + en plus des interventions saisies. Elle ne compte jamais dans les heures + travaillées : elle est suivie à part dans le récapitulatif d'astreinte de la + semaine ; le lendemain de l'astreinte n'est pas concerné. Vide = pas de forfait.
diff --git a/app/tests/test_astreinte.py b/app/tests/test_astreinte.py index 097a6f6..10aaa3a 100644 --- a/app/tests/test_astreinte.py +++ b/app/tests/test_astreinte.py @@ -555,9 +555,10 @@ def test_compute_week_astreinte_samedi_dimanche(freeze_today): # ── Forfait par jour d'astreinte déclaré ─────────────────────────────────────── -def test_compute_week_forfait_ajoute_au_travaille_du_jour_declare(freeze_today): - """Forfait 1h00 réglé : ajouté au travaillé du jour AS déclaré uniquement - (pas du lendemain), sans toucher aux heures dues.""" +def test_compute_week_forfait_hors_heures_travaillees(freeze_today): + """Forfait 1h00 réglé : attribué au jour AS déclaré uniquement (pas du + lendemain), mais jamais compté dans les heures travaillées — seulement + suivi dans le récapitulatif d'astreinte.""" plages = {**PLAGES, "astreinte_forfait": "01:00"} pointages = [ _pointage("2026-07-13", "09:00", "12:24", "13:30", "17:54"), @@ -567,10 +568,10 @@ def test_compute_week_forfait_ajoute_au_travaille_du_jour_declare(freeze_today): result = compute_week(pointages, [], HEURES_JOUR_MIN, plages, ["2026-07-14"]) mardi = result["jours"][1] assert mardi["forfait_min"] == 60 - assert mardi["travaille_min"] == HEURES_JOUR_MIN + 60 + assert mardi["travaille_min"] == HEURES_JOUR_MIN # pointé seul, forfait exclu assert result["jours"][2]["forfait_min"] == 0 # lendemain : rien assert result["jours"][0]["forfait_min"] == 0 # jour sans astreinte - assert result["total_travaille"] == "16h36" # 2 × 7h48 + 1h + assert result["total_travaille"] == "15h36" # 2 × 7h48, forfait exclu # récapitulatif d'astreinte : le jour AS apparaît avec son forfait même sans # intervention ; le forfait est rappelé mais hors compteurs pondérés ast = result["astreinte"]