From 4379dd9da146be97f0df2c72032ec3c920fd0591 Mon Sep 17 00:00:00 2001 From: benoit-cty <6603048+benoit-cty@users.noreply.github.com> Date: Thu, 4 Jul 2024 16:29:18 +0200 Subject: [PATCH] Fix formulas --- .gitlab-ci.yml | 4 +- .../assets/prix/prix_mensuel_carburants.csv | 9 +++ .../formulas/prix_carburants_ttc_sortie.yaml | 66 +++++++++++++++++++ .../tests/formulas/ticpe_carburant.yaml | 18 +++++ .../tests/test_prix_carburants_accises.py | 37 ----------- .../taxes_indirectes/prix_carburants_ht.py | 47 ++++++++++--- .../taxes_indirectes/prix_carburants_ttc.py | 38 +++++++++-- .../prix_carburants_ttc_sortie.py | 44 ++++++++++--- 8 files changed, 197 insertions(+), 66 deletions(-) delete mode 100644 openfisca_france_indirect_taxation/tests/test_prix_carburants_accises.py diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 37621e04..880c3d56 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -70,7 +70,7 @@ Build matched data: when: manual -Test: +Test_YAML_Carburants: stage: test image: $CI_REGISTRY_IMAGE:latest tags: @@ -82,7 +82,7 @@ Test: - cp /mnt/data-out/openfisca-france-indirect-taxation/openfisca_survey_manager_config_with_matched_data.ini ~/.config/openfisca-survey-manager/config.ini - mkdir -p /root/ci-files/data_collections script: - - openfisca test --country-package openfisca_france_indirect_taxation openfisca_france_indirect_taxation/tests/test_prix_carburants_accises.py + - openfisca test --country-package openfisca_france_indirect_taxation openfisca_france_indirect_taxation/tests/formulas/*carbu* # Test_All: diff --git a/openfisca_france_indirect_taxation/assets/prix/prix_mensuel_carburants.csv b/openfisca_france_indirect_taxation/assets/prix/prix_mensuel_carburants.csv index b53a5037..cfd5ed38 100644 --- a/openfisca_france_indirect_taxation/assets/prix/prix_mensuel_carburants.csv +++ b/openfisca_france_indirect_taxation/assets/prix/prix_mensuel_carburants.csv @@ -379,3 +379,12 @@ Date,diesel_ttc,super_98_ttc,super_95_ttc,super_plombe_ttc,super_95_e10_ttc 2023/06,1.7,1.94,1.88,,1.86 2023/07,1.72,1.91,1.85,,1.84 2023/08,1.85,1.99,1.94,,1.93 +2023/09,1.93,2.02,1.97,,1.95 +2023/10,1.91,1.94,1.89,,1.87 +2023/11,1.84,1.91,1.85,,1.83 +2023/12,1.77,1.87,1.81,,1.79 +2024/01,1.75,1.87,1.82,,1.79 +2024/02,1.83,1.92,1.86,,1.83 +2024/03,1.8,1.94,1.89,,1.86 +2024/04,1.79,1.99,1.94,,1.91 +2024/05,1.73,1.97,1.92,,1.88 diff --git a/openfisca_france_indirect_taxation/tests/formulas/prix_carburants_ttc_sortie.yaml b/openfisca_france_indirect_taxation/tests/formulas/prix_carburants_ttc_sortie.yaml index 782f2820..02c54a07 100644 --- a/openfisca_france_indirect_taxation/tests/formulas/prix_carburants_ttc_sortie.yaml +++ b/openfisca_france_indirect_taxation/tests/formulas/prix_carburants_ttc_sortie.yaml @@ -58,6 +58,45 @@ output: prix_gazole_b10_ttc_sortie: 1.5504 +- name: "Test gazole_b10_ticpe 2019" + period: 2019 + absolute_error_margin: .01 + input: + nombre_litres_gazole_b10: 100 + prix_gazole_b10_ht: 1.0 + code_region: '84' + output: + gazole_b10_ticpe: 59.40 + prix_gazole_b10_ht_avant_remise: 0.625 + prix_gazole_b10_ttc_sortie: 1.912 + prix_gazole_b10_ttc: 1.463 + +- name: "Test gazole_b10_ticpe 2022" + period: 2022 + absolute_error_margin: .01 + input: + nombre_litres_gazole_b10: 100 + prix_gazole_b10_ht: 1.0 + code_region: '84' + output: + gazole_b10_ticpe: 59.40 + prix_gazole_b10_ht_avant_remise: 1.122 + prix_gazole_b10_ttc_sortie: 1.912 + prix_gazole_b10_ttc: 1.88 + +- name: "Test gazole_b10_ticpe 2024" + period: 2024 + absolute_error_margin: .01 + input: + nombre_litres_gazole_b10: 100 + prix_gazole_b10_ht: 5.0 + code_region: '84' + output: + gazole_b10_ticpe: 59.40 + prix_gazole_b10_ht_avant_remise: 1234 + prix_gazole_b10_ttc_sortie: 1.912 + prix_gazole_b10_ttc: 1234 + # prix essence ttc_sortie: ## prix essence SP95 E10 ttc_sortie: @@ -187,6 +226,24 @@ output: prix_essence_e85_ttc_sortie: 0.7307 +- name: "Test prix_essence_e85_ttc_sortie" + period: 2023 + absolute_error_margin: .01 + input: + code_region: '11' + prix_essence_e85_ht: 0.4906 + output: + prix_essence_e85_ttc_sortie: 0.7307 + +- name: "Test prix_essence_e85_ttc_sortie" + period: 2024 + absolute_error_margin: .01 + input: + code_region: '11' + prix_essence_e85_ht: 0.4906 + output: + prix_essence_e85_ttc_sortie: 0.7307 + - name: "Test prix_essence_e85_ttc_sortie" period: 2022 absolute_error_margin: .01 @@ -205,6 +262,15 @@ output: prix_essence_e85_ttc_sortie: 1.3504 +- name: "Test prix_essence_e85_ttc_sortie" + period: 2024 + absolute_error_margin: .01 + input: + code_region: '94' + prix_essence_e85_ht: 1.007 + output: + prix_essence_e85_ttc_sortie: 1.3504 + # prix GPL ttc_sortie: - name: "Test prix_gpl_carburant_ttc_sortie" diff --git a/openfisca_france_indirect_taxation/tests/formulas/ticpe_carburant.yaml b/openfisca_france_indirect_taxation/tests/formulas/ticpe_carburant.yaml index 8a605255..a632684c 100644 --- a/openfisca_france_indirect_taxation/tests/formulas/ticpe_carburant.yaml +++ b/openfisca_france_indirect_taxation/tests/formulas/ticpe_carburant.yaml @@ -58,6 +58,24 @@ output: gazole_b10_ticpe: 59.40 +- name: "Test gazole_b10_ticpe" + period: 2019 + absolute_error_margin: .01 + input: + nombre_litres_gazole_b10: 100 + code_region: '84' + output: + gazole_b10_ticpe: 59.40 + +- name: "Test gazole_b10_ticpe" + period: 2024 + absolute_error_margin: .01 + input: + nombre_litres_gazole_b10: 100 + code_region: '84' + output: + gazole_b10_ticpe: 59.40 + ## TICPE gazole total: - name: "Test gazole_ticpe_total" diff --git a/openfisca_france_indirect_taxation/tests/test_prix_carburants_accises.py b/openfisca_france_indirect_taxation/tests/test_prix_carburants_accises.py deleted file mode 100644 index 03d8d574..00000000 --- a/openfisca_france_indirect_taxation/tests/test_prix_carburants_accises.py +++ /dev/null @@ -1,37 +0,0 @@ -from openfisca_france_indirect_taxation import FranceIndirectTaxationTaxBenefitSystem - - -def test_prix_carburants_2022(): - ''' - This test is made to preprocessing of prix_carburants works as some indirect taxes on fuel - ''' - - date = "2022-11-01" - parameters = FranceIndirectTaxationTaxBenefitSystem().parameters(date) - assert round(parameters.prix_carburants.super_95_ttc, 2) == 183.0 - assert round(parameters.prix_carburants.super_95_e10_ttc, 2) == 178.0 - accise_super95 = parameters.imposition_indirecte.produits_energetiques.ticpe.super_95_98 - majoration_ticpe_super95 = parameters.imposition_indirecte.produits_energetiques.majoration_regionale_ticpe_sp95_sp98_sp95_e10.alsace - assert round(accise_super95 + majoration_ticpe_super95, 2) == 587.0 - accise_super_e10 = parameters.imposition_indirecte.produits_energetiques.ticpe.super_e10 - majoration_ticpe_super_e10 = \ - parameters.imposition_indirecte.produits_energetiques.majoration_regionale_ticpe_sp95_sp98_sp95_e10.alsace - assert round(accise_super_e10 + majoration_ticpe_super_e10, 2) == 123.19 - - -def test_prix_carburants_2024(): - ''' - This test is made to preprocessing of prix_carburants works as some indirect taxes on fuel - ''' - - year = "2024" - parameters = FranceIndirectTaxationTaxBenefitSystem().parameters(year) - assert round(parameters.prix_carburants.super_95_ttc, 2) == 183.0 - assert round(parameters.prix_carburants.super_95_e10_ttc, 2) == 178.0 - accise_super95 = parameters.imposition_indirecte.produits_energetiques.ticpe.super_95_98 - majoration_ticpe_super95 = parameters.imposition_indirecte.produits_energetiques.majoration_regionale_ticpe_sp95_sp98_sp95_e10.alsace - assert round(accise_super95 + majoration_ticpe_super95, 2) == 1234.19 - accise_super_e10 = parameters.imposition_indirecte.produits_energetiques.ticpe.super_e10 - majoration_ticpe_super_e10 = \ - parameters.imposition_indirecte.produits_energetiques.majoration_regionale_ticpe_sp95_sp98_sp95_e10.alsace - assert round(accise_super_e10 + majoration_ticpe_super_e10, 2) == 12345.19 diff --git a/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ht.py b/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ht.py index 1efef281..4a14599d 100644 --- a/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ht.py +++ b/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ht.py @@ -104,7 +104,10 @@ class prix_gazole_b7_ht(Variable): default_value = 0 reference = "https://www.legifrance.gouv.fr/loda/article_lc/LEGIARTI000046489832/2022-10-27/" - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_gazole_b7_ht_avant_remise', period) + + def formula_2022(menage, period, parameters): prix_gazole_b7_ht_avant_remise = menage('prix_gazole_b7_ht_avant_remise', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl prix_gazole_b7_ht = prix_gazole_b7_ht_avant_remise - (aide_exceptionnelle_gazole_essence_hl / 100) @@ -147,7 +150,10 @@ class prix_gazole_b10_ht(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_gazole_b10_ht_avant_remise', period) + + def formula_2022(menage, period, parameters): prix_gazole_b10_ht_avant_remise = menage('prix_gazole_b10_ht_avant_remise', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl prix_gazole_b10_ht = prix_gazole_b10_ht_avant_remise - (aide_exceptionnelle_gazole_essence_hl / 100) @@ -279,7 +285,10 @@ class prix_essence_sp95_e10_ht(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_essence_sp95_e10_ht_avant_remise', period) + + def formula_2022(menage, period, parameters): prix_essence_sp95_e10_ht_avant_remise = menage('prix_essence_sp95_e10_ht_avant_remise', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl prix_essence_sp95_e10_hors_remise_ttc = prix_essence_sp95_e10_ht_avant_remise - (aide_exceptionnelle_gazole_essence_hl / 100) @@ -410,8 +419,11 @@ class prix_essence_sp95_ht(Variable): label = "prix de l'essence SP95 TTC par litre" definition_period = YEAR default_value = 0 - - def formula(menage, period, parameters): + + def formula(menage, period): + return menage('prix_essence_sp95_ht_avant_remise', period) + + def formula_2022(menage, period, parameters): prix_essence_sp95_ht_avant_remise = menage('prix_essence_sp95_ht_avant_remise', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl prix_essence_sp95_hors_remise_ttc = prix_essence_sp95_ht_avant_remise - (aide_exceptionnelle_gazole_essence_hl / 100) @@ -543,11 +555,17 @@ class prix_essence_sp98_ht(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_essence_sp98_ht_avant_remise', period) + + def formula_2022(menage, period, parameters): prix_essence_sp98_ht_avant_remise = menage('prix_essence_sp98_ht_avant_remise', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl prix_essence_sp98_hors_remise_ttc = prix_essence_sp98_ht_avant_remise - (aide_exceptionnelle_gazole_essence_hl / 100) return prix_essence_sp98_hors_remise_ttc + + def formula_2023(menage, period): + return menage('prix_essence_sp98_ht_avant_remise', period) class prix_essence_super_plombe_ht(Variable): @@ -604,12 +622,18 @@ class prix_essence_e85_ht(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_essence_e85_ht_avant_remise', period) + + def formula_2022(menage, period, parameters): prix_essence_e85_ht_avant_remise = menage('prix_essence_e85_ht_avant_remise', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl prix_essence_e85_ht = prix_essence_e85_ht_avant_remise - (aide_exceptionnelle_gazole_essence_hl / 100) return prix_essence_e85_ht - + + def formula_2023(menage, period): + return menage('prix_essence_e85_ht_avant_remise', period) + class prix_gpl_carburant_ht_avant_remise(Variable): value_type = float @@ -646,8 +670,11 @@ class prix_gpl_carburant_ht(Variable): definition_period = YEAR default_value = 0 reference = "https://www.legifrance.gouv.fr/loda/article_lc/LEGIARTI000046489832/2022-10-27/" - - def formula(menage, period, parameters): + + def formula(menage, period): + return menage('prix_gpl_carburant_ht_avant_remise', period) + + def formula_2022(menage, period, parameters): prix_gpl_carburant_ht_avant_remise = menage('prix_gpl_carburant_ht_avant_remise', period) aide_exceptionnelle_gpl_carburant_100kg = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gpl_carburant_100kg prix_gpl_carburant_ht = prix_gpl_carburant_ht_avant_remise - (aide_exceptionnelle_gpl_carburant_100kg / 100) diff --git a/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ttc.py b/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ttc.py index 847e747c..f3cf0ddd 100644 --- a/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ttc.py +++ b/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ttc.py @@ -30,7 +30,10 @@ class prix_gazole_b7_hors_remise_ttc(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_gazole_b7_ttc', period) + + def formula_2022(menage, period, parameters): prix_gazole_b7_ttc = menage('prix_gazole_b7_ttc', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -65,8 +68,11 @@ class prix_gazole_b10_hors_remise_ttc(Variable): label = "prix du gazole B10 TTC par litre si la remise n'avait pas eu lieu" definition_period = YEAR default_value = 0 + + def formula(menage, period): + return menage('prix_gazole_b10_ttc', period) - def formula(menage, period, parameters): + def formula_2022(menage, period, parameters): prix_gazole_b10_ttc = menage('prix_gazole_b10_ttc', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -102,7 +108,10 @@ class prix_essence_sp95_e10_hors_remise_ttc(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_essence_sp95_e10_ttc', period) + + def formula_2022(menage, period, parameters): prix_essence_sp95_e10_ttc = menage('prix_essence_sp95_e10_ttc', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -137,8 +146,11 @@ class prix_essence_sp95_hors_remise_ttc(Variable): label = "prix de l'essence SP95 TTC par litre si la remise n'avait pas eu lieu" definition_period = YEAR default_value = 0 + + def formula(menage, period): + return menage('prix_essence_sp95_ttc', period) - def formula(menage, period, parameters): + def formula_2022(menage, period, parameters): prix_essence_sp95_ttc = menage('prix_essence_sp95_ttc', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -173,8 +185,11 @@ class prix_essence_sp98_hors_remise_ttc(Variable): label = "prix de l'essence SP98 TTC par litre si la remise n'avait pas eu lieu" definition_period = YEAR default_value = 0 + + def formula(menage, period): + return menage('prix_essence_sp98_ttc', period) - def formula(menage, period, parameters): + def formula_2022(menage, period, parameters): prix_essence_sp98_ttc = menage('prix_essence_sp98_ttc', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -223,8 +238,11 @@ class prix_essence_e85_hors_remise_ttc(Variable): label = "prix de l'essence E85 TTC par litre si la remise n'avait pas eu lieu" definition_period = YEAR default_value = 0 + + def formula(menage, period): + return menage('prix_essence_e85_ttc', period) - def formula(menage, period, parameters): + def formula_2022(menage, period, parameters): prix_essence_e85_ttc = menage('prix_essence_e85_ttc', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -260,9 +278,15 @@ class prix_gpl_carburant_hors_remise_ttc(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_gpl_carburant_ttc', period) + + def formula_2022(menage, period, parameters): prix_gpl_carburant_ttc = menage('prix_gpl_carburant_ttc', period) aide_exceptionnelle_gpl_carburant_100kg = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gpl_carburant_100kg taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal prix_gpl_carburant_hors_remise_ttc = prix_gpl_carburant_ttc + (aide_exceptionnelle_gpl_carburant_100kg / 100) * (1 + taux_plein_tva) return prix_gpl_carburant_hors_remise_ttc + + def formula_2023(menage, period): + return menage('prix_gpl_carburant_ttc', period) diff --git a/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ttc_sortie.py b/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ttc_sortie.py index 3eeb7e6e..61ff3f63 100644 --- a/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ttc_sortie.py +++ b/openfisca_france_indirect_taxation/variables/taxes_indirectes/prix_carburants_ttc_sortie.py @@ -106,7 +106,10 @@ class prix_gazole_b7_hors_remise_ttc_sortie(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_gazole_b7_ttc_sortie', period) + + def formula_2022(menage, period, parameters): prix_gazole_b7_ttc = menage('prix_gazole_b7_ttc_sortie', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -149,8 +152,11 @@ class prix_gazole_b10_hors_remise_ttc_sortie(Variable): label = "prix du gazole B10 TTC par litre si la remise n'avait pas eu lieu" definition_period = YEAR default_value = 0 - - def formula(menage, period, parameters): + + def formula(menage, period): + return menage('prix_gazole_b10_ttc_sortie', period) + + def formula_2022(menage, period, parameters): prix_gazole_b10_ttc = menage('prix_gazole_b10_ttc_sortie', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -282,8 +288,11 @@ class prix_essence_sp95_e10_hors_remise_ttc_sortie(Variable): label = "prix de l'essence SP95 E10 TTC par litre si la remise n'avait pas eu lieu" definition_period = YEAR default_value = 0 - - def formula(menage, period, parameters): + + def formula(menage, period): + return menage('prix_essence_sp95_e10_ttc_sortie', period) + + def formula_2022(menage, period, parameters): prix_essence_sp95_e10_ttc = menage('prix_essence_sp95_e10_ttc_sortie', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -415,8 +424,11 @@ class prix_essence_sp95_hors_remise_ttc_sortie(Variable): label = "prix de l'essence SP95 TTC par litre si la remise n'avait pas eu lieu" definition_period = YEAR default_value = 0 - - def formula(menage, period, parameters): + + def formula(menage, period): + return menage('prix_essence_sp95_ttc_sortie', period) + + def formula_2022(menage, period, parameters): prix_essence_sp95_ttc = menage('prix_essence_sp95_ttc_sortie', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -549,7 +561,10 @@ class prix_essence_sp98_hors_remise_ttc_sortie(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_essence_sp98_ttc_sortie', period) + + def formula_2022(menage, period, parameters): prix_essence_sp98_ttc = menage('prix_essence_sp98_ttc_sortie', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -614,7 +629,10 @@ class prix_essence_e85_hors_remise_ttc_sortie(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_essence_e85_ttc_sortie', period) + + def formula_2022(menage, period, parameters): prix_essence_e85_ttc = menage('prix_essence_e85_ttc_sortie', period) aide_exceptionnelle_gazole_essence_hl = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gazole_essence_hl taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal @@ -658,9 +676,15 @@ class prix_gpl_carburant_hors_remise_ttc_sortie(Variable): definition_period = YEAR default_value = 0 - def formula(menage, period, parameters): + def formula(menage, period): + return menage('prix_gpl_carburant_ttc_sortie', period) + + def formula_2022(menage, period, parameters): prix_gpl_carburant_ttc = menage('prix_gpl_carburant_ttc_sortie', period) aide_exceptionnelle_gpl_carburant_100kg = parameters(period.start).imposition_indirecte.produits_energetiques.aide_exceptionnelle_carburant.gpl_carburant_100kg taux_plein_tva = parameters(period).imposition_indirecte.tva.taux_de_tva.taux_normal prix_gpl_carburant_hors_remise_ttc = prix_gpl_carburant_ttc + (aide_exceptionnelle_gpl_carburant_100kg / 100) * (1 + taux_plein_tva) return prix_gpl_carburant_hors_remise_ttc + + def formula_2023(menage, period): + return menage('prix_gpl_carburant_ttc_sortie', period)