forked from ScoDoc/DocScoDoc
Tests YAML: permet d'indiquer la décision de jury sur les UEs
This commit is contained in:
parent
1e73021c42
commit
f99dc33ea8
@ -173,6 +173,7 @@ Etudiants:
|
||||
"UE2.4-C4":
|
||||
codes: [ "AJ", "..." ]
|
||||
code_valide: AJ
|
||||
decision_jury: ADJ # le jury force la décision ADJ
|
||||
moy_ue: 08.55
|
||||
decisions_rcues: # on repère ici les RCUE par l'acronyme de leur 1ere UE (donc du S1)
|
||||
"UE1.1-C1":
|
||||
|
@ -63,13 +63,15 @@ def test_but_jury_GMP_lm(test_client):
|
||||
formsemestres = FormSemestre.query.order_by(
|
||||
FormSemestre.date_debut, FormSemestre.semestre_id
|
||||
).all()
|
||||
|
||||
# Vérifie les deca de tous les semestres:
|
||||
for formsemestre in formsemestres:
|
||||
_check_deca(formsemestre)
|
||||
|
||||
# Saisie de toutes les décisions de jury
|
||||
# Saisie de toutes les décisions de jury qui ne le seraient pas déjà
|
||||
for formsemestre in formsemestres:
|
||||
formsemestre_validation_auto_but(formsemestre, only_adm=False)
|
||||
|
||||
# Vérifie résultats attendus:
|
||||
for formsemestre in formsemestres:
|
||||
_test_but_jury(formsemestre, doc)
|
||||
@ -118,7 +120,7 @@ def _check_deca(formsemestre: FormSemestre, etud: Identite = None):
|
||||
|
||||
def _test_but_jury(formsemestre: FormSemestre, doc: dict):
|
||||
"""Test jurys
|
||||
Vérifie les champs de DecisionsProposeesAnnee et UEs
|
||||
Vérifie les champs de DecisionsProposeesAnnee et UEs
|
||||
"""
|
||||
for etud in formsemestre.etuds:
|
||||
deca = DecisionsProposeesAnnee(etud, formsemestre)
|
||||
|
@ -340,7 +340,9 @@ def _check_codes_jury(codes: list[str], codes_att: list[str]):
|
||||
def _check_decisions_ues(
|
||||
decisions_ues: dict[int, DecisionsProposeesUE], decisions_ues_att: dict[str:dict]
|
||||
):
|
||||
"""Vérifie les décisions d'UE"""
|
||||
"""Vérifie les décisions d'UE
|
||||
pui enregistre décision manuelle si indiquée.
|
||||
"""
|
||||
for acronyme, dec_ue_att in decisions_ues_att.items():
|
||||
# retrouve l'UE
|
||||
ues_d = [
|
||||
@ -357,8 +359,14 @@ def _check_decisions_ues(
|
||||
if attr in dec_ue_att:
|
||||
if getattr(dec_ue, attr) != dec_ue_att[attr]:
|
||||
raise ValueError(
|
||||
f"Erreur: décision d'UE: {dec_ue.ue.acronyme} : champs {attr}={getattr(dec_ue, attr)} != attendu {dec_ue_att[attr]}"
|
||||
f"""Erreur: décision d'UE: {dec_ue.ue.acronyme
|
||||
} : champs {attr}={getattr(dec_ue, attr)} != attendu {dec_ue_att[attr]}"""
|
||||
)
|
||||
# Force décision de jury:
|
||||
code_manuel = dec_ue_att.get("decision_jury")
|
||||
if code_manuel is not None:
|
||||
assert code_manuel in dec_ue.codes
|
||||
dec_ue.record(code_manuel)
|
||||
|
||||
|
||||
def _check_decisions_rcues(
|
||||
@ -394,7 +402,8 @@ def _check_decisions_rcues(
|
||||
|
||||
|
||||
def compare_decisions_annee(deca: DecisionsProposeesAnnee, deca_att: dict):
|
||||
"""Vérifie que les résultats de jury calculés sont ceux attendus.
|
||||
"""Vérifie que les résultats de jury calculés sont ceux attendus,
|
||||
puis enregistre les décisions manuelles indiquées dans le YAML.
|
||||
deca est le résultat calculé par ScoDoc
|
||||
deca_att est un dict lu du YAML
|
||||
"""
|
||||
|
Loading…
Reference in New Issue
Block a user