diff --git a/app/but/cursus_but.py b/app/but/cursus_but.py index 8e3ae8b9..1f453882 100644 --- a/app/but/cursus_but.py +++ b/app/but/cursus_but.py @@ -447,8 +447,24 @@ def formsemestre_warning_apc_setup( }">formation n'est pas associée à un référentiel de compétence. """ - # Vérifie les niveaux de chaque parcours H = [] + # Le semestre n'a pas de parcours, mais les UE ont des parcours ? + if not formsemestre.parcours: + nb_ues_sans_parcours = len( + formsemestre.formation.query_ues_parcour(None) + .filter(UniteEns.semestre_idx == formsemestre.semestre_id) + .all() + ) + nb_ues_tot = ( + UniteEns.query.filter_by(formation=formsemestre.formation, type=UE_STANDARD) + .filter(UniteEns.semestre_idx == formsemestre.semestre_id) + .count() + ) + if nb_ues_sans_parcours != nb_ues_tot: + H.append( + f"""Le semestre n'est associé à aucun parcours, mais les UEs de la formation ont des parcours""" + ) + # Vérifie les niveaux de chaque parcours for parcour in formsemestre.parcours or [None]: annee = (formsemestre.semestre_id + 1) // 2 niveaux_ids = { diff --git a/tests/scenarios/test_scenario1_formation.py b/tests/scenarios/test_scenario1_formation.py index a4b13ee3..d0c1549e 100644 --- a/tests/scenarios/test_scenario1_formation.py +++ b/tests/scenarios/test_scenario1_formation.py @@ -11,14 +11,12 @@ Usage: pytest tests/scenarios/test_scenario1_formation.py """ # code écrit par Fares Amer, mai 2021 et porté sur ScoDoc 8 en août 2021 -import random - from tests.unit import sco_fake_gen from app.scodoc import sco_edit_module from app.scodoc import sco_formations -from app.scodoc import sco_moduleimpl +@pytest.mark.skip # test obsolete def test_scenario1(test_client): """Applique "scenario 1""" run_scenario1() @@ -28,7 +26,9 @@ def run_scenario1(): G = sco_fake_gen.ScoFake(verbose=False) # Lecture fichier XML local: - with open("tests/unit/formation-exemple-1.xml") as f: + with open( + "tests/ressources/formations/formation-exemple-1.xml", encoding="utf8" + ) as f: doc = f.read() # --- Création de la formation