forked from ScoDoc/ScoDoc
Fix #491: vérification conformité poids modules
This commit is contained in:
parent
7fe2d605c3
commit
0f902457f6
@ -433,7 +433,9 @@ def moduleimpl_is_conforme(
|
|||||||
Un module est dit *conforme* si et seulement si la somme des poids de ses
|
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.
|
évaluations vers une UE de coefficient non nul est non nulle.
|
||||||
|
|
||||||
Argument: evals_poids: DataFrame, colonnes: UEs, Lignes: EVALs
|
Arguments:
|
||||||
|
evals_poids: DataFrame, colonnes: UEs, Lignes: EVALs
|
||||||
|
modules_coefficients: DataFrame, cols module_id, lignes UEs
|
||||||
NB: les UEs dans evals_poids sont sans le bonus sport
|
NB: les UEs dans evals_poids sont sans le bonus sport
|
||||||
"""
|
"""
|
||||||
nb_evals, nb_ues = evals_poids.shape
|
nb_evals, nb_ues = evals_poids.shape
|
||||||
@ -445,12 +447,8 @@ def moduleimpl_is_conforme(
|
|||||||
# il arrive (#bug) que le cache ne soit pas à jour...
|
# il arrive (#bug) que le cache ne soit pas à jour...
|
||||||
sco_cache.invalidate_formsemestre()
|
sco_cache.invalidate_formsemestre()
|
||||||
raise ScoBugCatcher("moduleimpl_is_conforme: nb ue incoherent")
|
raise ScoBugCatcher("moduleimpl_is_conforme: nb ue incoherent")
|
||||||
module_evals_poids = evals_poids.transpose().sum(axis=1).to_numpy() != 0
|
module_evals_poids = evals_poids.transpose().sum(axis=1) != 0
|
||||||
check = all(
|
return all((modules_coefficients[moduleimpl.module_id] != 0).eq(module_evals_poids))
|
||||||
(modules_coefficients[moduleimpl.module_id].to_numpy() != 0)
|
|
||||||
== module_evals_poids
|
|
||||||
)
|
|
||||||
return check
|
|
||||||
|
|
||||||
|
|
||||||
class ModuleImplResultsClassic(ModuleImplResults):
|
class ModuleImplResultsClassic(ModuleImplResults):
|
||||||
|
Loading…
Reference in New Issue
Block a user