diff --git a/source/engine/mecanisms.js b/source/engine/mecanisms.js index 8d9247329..a7988980e 100644 --- a/source/engine/mecanisms.js +++ b/source/engine/mecanisms.js @@ -548,12 +548,12 @@ export let mecanismReduction = (recurse, k, v) => { } let effect = ({ assiette, abattement, franchise, décote }) => { - let v_assiette = val(assiette), - nulled = v_assiette == null + let v_assiette = val(assiette) - let montantFranchiséDécoté = nulled - ? null - : val(franchise) && v_assiette < val(franchise) + if (v_assiette == null) return null + + let montantFranchiséDécoté = + val(franchise) && v_assiette < val(franchise) ? 0 : décote ? do { diff --git a/test/mécanismes/allègement.yaml b/test/mécanismes/allègement.yaml index 6c5d71a9e..61a64aea1 100644 --- a/test/mécanismes/allègement.yaml +++ b/test/mécanismes/allègement.yaml @@ -12,6 +12,11 @@ - situation: montant: 1000 valeur attendue: 0 + - situation: + valeur attendue: null + variables manquantes: + - montant + - test: montant décoté format: €