Skip to content

Commit

Permalink
Fix formulas
Browse files Browse the repository at this point in the history
  • Loading branch information
benoit-cty committed Jul 4, 2024
1 parent 9ff4a44 commit 4379dd9
Show file tree
Hide file tree
Showing 8 changed files with 197 additions and 66 deletions.
4 changes: 2 additions & 2 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ Build matched data:

when: manual

Test:
Test_YAML_Carburants:
stage: test
image: $CI_REGISTRY_IMAGE:latest
tags:
Expand All @@ -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:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down Expand Up @@ -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
Expand All @@ -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"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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"
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down Expand Up @@ -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)
Expand Down Expand Up @@ -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)
Expand Down Expand Up @@ -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)
Expand Down Expand Up @@ -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):
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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)
Loading

0 comments on commit 4379dd9

Please sign in to comment.