Fix: bug check conformité si pas de poids

This commit is contained in:
Emmanuel Viennet 2021-12-13 19:04:35 +01:00
parent 79c4b33bee
commit 44237c648b

View File

@ -73,6 +73,11 @@ def check_moduleimpl_conformity(
Un module est dit *conforme* si et seulement si la somme des poids de ses
évaluations vers une UE de coefficient non nul est non nulle.
"""
nb_evals, nb_ues = evals_poids.shape
if nb_evals == 0:
return True # modules vides conformes
if nb_ues == 0:
return False # situation absurde (pas d'UE)
module_evals_poids = evals_poids.transpose().sum(axis=1).to_numpy() != 0
check = all(
(modules_coefficients[moduleimpl.module.id].to_numpy() != 0)
@ -177,6 +182,8 @@ def compute_module_moy(
nb_etuds, nb_evals = evals_notes_df.shape
nb_ues = evals_poids_df.shape[1]
assert evals_poids_df.shape[0] == nb_evals # compat notes/poids
if nb_etuds == 0:
return pd.DataFrame(index=[], columns=evals_poids_df.columns)
# Coefficients des évaluations, met à zéro ceux des évals incomplètes:
evals_coefs = (
np.array(