diff --git a/sco_compute_moy.py b/sco_compute_moy.py index 904436b3a..7dba22a57 100644 --- a/sco_compute_moy.py +++ b/sco_compute_moy.py @@ -348,7 +348,7 @@ def do_moduleimpl_moyennes(context, nt, mod): if diag_info: diag_info["moduleimpl_id"] = moduleimpl_id R[etudid] = user_moy - # Note de rattrapage ou dexuième session ? + # Note de rattrapage ou deuxième session ? if eval_rattr: if eval_rattr["notes"].has_key(etudid): note = eval_rattr["notes"][etudid]["value"] diff --git a/scotests/test_basic.py b/scotests/test_basic.py index 8cfbd31c2..d4ca91a72 100644 --- a/scotests/test_basic.py +++ b/scotests/test_basic.py @@ -21,6 +21,9 @@ import sco_abs import sco_abs_views import sco_bulletins import sco_evaluations +import sco_codes_parcours +import sco_parcours_dut +import sco_formsemestre_validation G = sco_fake_gen.ScoFake(context.Notes) G.verbose = False @@ -150,3 +153,27 @@ _ = sco_abs_views.doJustifAbsence( a = sco_abs.getAbsSemEtud(context.Absences, sem, etudid) assert a.CountAbs() == 3 assert a.CountAbsJust() == 1 + +# --- Permission saisie notes et décisions de jury, avec ou sans démission ou défaillance +# on n'a pas encore saisi de décisions +assert not sco_parcours_dut.formsemestre_has_decisions(context, sem["formsemestre_id"]) +# Saisie d'un décision AJ, non assidu +etudid = etuds[-1]["etudid"] +sco_parcours_dut.formsemestre_validate_ues( + context.Notes, + sem["formsemestre_id"], + etudid, + sco_codes_parcours.AJ, + False, + REQUEST=REQUEST, +) +assert sco_parcours_dut.formsemestre_has_decisions( + context.Notes, sem["formsemestre_id"] +) +# Suppression de la décision +sco_formsemestre_validation.formsemestre_validation_suppress_etud( + context.Notes, sem["formsemestre_id"], etudid +) +assert not sco_parcours_dut.formsemestre_has_decisions( + context.Notes, sem["formsemestre_id"] +)