hestia-earth-models 0.70.5__py3-none-any.whl → 0.70.6__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -113,7 +113,10 @@ def properties_logs(blank_nodes: list, properties: Union[dict, list]):
113
113
 
114
114
  def group_by_keys(group_keys: list = ['term']):
115
115
  def run(group: dict, node: dict):
116
- group_key = '-'.join(non_empty_list(map(lambda v: node.get(v, {}).get('@id'), group_keys)))
116
+ group_key = '-'.join(non_empty_list([
117
+ node.get(v, {}).get('@id') if isinstance(node.get(v), dict) else node.get(v)
118
+ for v in group_keys
119
+ ]))
117
120
  group[group_key] = group.get(group_key, []) + [node]
118
121
  return group
119
122
  return run
@@ -1 +1 @@
1
- VERSION = '0.70.5'
1
+ VERSION = '0.70.6'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: hestia-earth-models
3
- Version: 0.70.5
3
+ Version: 0.70.6
4
4
  Summary: HESTIA's set of modules for filling gaps in the activity data using external datasets (e.g. populating soil properties with a geospatial dataset using provided coordinates) and internal lookups (e.g. populating machinery use from fuel use). Includes rules for when gaps should be filled versus not (e.g. never gap fill yield, gap fill crop residue if yield provided etc.).
5
5
  Home-page: https://gitlab.com/hestia-earth/hestia-engine-models
6
6
  Author: HESTIA Team
@@ -4,7 +4,7 @@ hestia_earth/models/cache_sites.py,sha256=BOhLkkdVWLJ-4Z7kxfQ8swqrYgZ43sACn1uzxY
4
4
  hestia_earth/models/log.py,sha256=eRuH86v7Thuw-QXdKqaqVmA_MkwnOCo0UBEwtuDq4Oc,3554
5
5
  hestia_earth/models/preload_requests.py,sha256=vK_G1UzhNMhYy7ymnCtHUz_vv3cfApCSKqv29VREEBQ,1943
6
6
  hestia_earth/models/requirements.py,sha256=eU4yT443fx7BnaokhrLB_PCizJI7Y6m4auyo8vQauNg,17363
7
- hestia_earth/models/version.py,sha256=-JgBQt5n6gG1CCXDecGH4FNOIQ7MDx7slt4WV4DuX9k,19
7
+ hestia_earth/models/version.py,sha256=kHvvtSr85q7ToIOOm0D5M9RTwVyE-adBX6WrA6LbJ68,19
8
8
  hestia_earth/models/agribalyse2016/__init__.py,sha256=WvK0qCQbnYtg9oZxrACd1wGormZyXibPtpCnIQeDqbw,415
9
9
  hestia_earth/models/agribalyse2016/fuelElectricity.py,sha256=1ngl8pdxeNhlVV8keAeWRwGorr_1uFXM9EoPUWx-uSc,4382
10
10
  hestia_earth/models/agribalyse2016/machineryInfrastructureDepreciatedAmountPerCycle.py,sha256=queToXuzq0tQ9_XuUJ2pJgSywXmbt9uX3ZoIKgqkROM,2660
@@ -102,21 +102,21 @@ hestia_earth/models/ecoalimV9/impact_assessment.py,sha256=HY2hvAq9Fv-rreroHdWpXx
102
102
  hestia_earth/models/ecoalimV9/utils.py,sha256=AWmWQhjvze3J6s35bH-EQIGc58xCeMA8_56hQD7CX8A,1170
103
103
  hestia_earth/models/ecoinventV3/__init__.py,sha256=qKJRphRIlcE52yxUARkolijZgXoB27t3hJeU6nRDKpA,5084
104
104
  hestia_earth/models/ecoinventV3/utils.py,sha256=RxqaHB9hr0RdTKSjfvDN0pC8DIOyxMCr4I_xjas1POw,460
105
- hestia_earth/models/ecoinventV3AndEmberClimate/__init__.py,sha256=7deu8P0SUfYe1u-Y2MOgI2psddgzr3U9BN6H3oU6n0E,5764
105
+ hestia_earth/models/ecoinventV3AndEmberClimate/__init__.py,sha256=N2XY-DADYgxHvPsery5wg7K_m_S83o-HMR0LtHd4uHE,5844
106
106
  hestia_earth/models/ecoinventV3AndEmberClimate/utils.py,sha256=AzslK6YB0jxVMLfkLVmhHpkM7mx639N0mIWbErD6GMw,1133
107
107
  hestia_earth/models/edip2003/__init__.py,sha256=nyB0CI2gNmRAXj-203aJHQMmETYhcY-dHbMABOhJ7YI,409
108
108
  hestia_earth/models/edip2003/ozoneDepletionPotential.py,sha256=YkBct4eDUidGukaVdd2iaEouq_FckuG8l_7pgBQgCBw,1033
109
109
  hestia_earth/models/emepEea2019/__init__.py,sha256=l90-pWrqIzt1ap1WNk0gF4iZeF5_TSG62hE83bIi4rQ,412
110
- hestia_earth/models/emepEea2019/co2ToAirFuelCombustion.py,sha256=ib_xzEbIg-iQwvW2L4BosD9lV6EYOXAiIs8gYhSD9GE,1431
111
- hestia_earth/models/emepEea2019/n2OToAirFuelCombustionDirect.py,sha256=H4dgGqDuvYN4S7TRxYsX3hms1xMWr8clR2gkyyO8T18,1438
110
+ hestia_earth/models/emepEea2019/co2ToAirFuelCombustion.py,sha256=TPzbKxV-AZ9yx_tJNGhuNsfRJQNfH4a0JEtPGLKc-tA,1833
111
+ hestia_earth/models/emepEea2019/n2OToAirFuelCombustionDirect.py,sha256=y0N_GhixisN6ScfKCpahrZe2CWOwl9ayDesO_erXX68,1839
112
112
  hestia_earth/models/emepEea2019/nh3ToAirExcreta.py,sha256=DssSjl_Kug9jE5laqJs9X4xOdOrJBnsXSnk-uA_anyE,2153
113
113
  hestia_earth/models/emepEea2019/nh3ToAirInorganicFertiliser.py,sha256=7G0_S0G6X9slTykxs6CDb68DvtXB7yfq1iSKg0ReXS8,6036
114
- hestia_earth/models/emepEea2019/noxToAirFuelCombustion.py,sha256=2--8lI6C6WaYtd9LQe-WZnhvW1eUsjBVAgzT8jclcsc,1431
114
+ hestia_earth/models/emepEea2019/noxToAirFuelCombustion.py,sha256=OlrCPBuOBGlvPh_ufO8fFzSvxvkJduX7tlqzEab6qzs,1833
115
115
  hestia_earth/models/emepEea2019/pm10ToAirAnimalHousing.py,sha256=7LhOEQokWMWEPspYSQO3PtsmWkygbVAonj_Nq6JAL6c,1384
116
116
  hestia_earth/models/emepEea2019/pm25ToAirAnimalHousing.py,sha256=IzGQrRv9Pk0o1Vq18HRWZ10jhmjFG59ijfn_VYAUJIA,1384
117
- hestia_earth/models/emepEea2019/so2ToAirFuelCombustion.py,sha256=8B1GVsn5gEXVW3iZYBct-s_OTRaH-asXo6JvGW_jls0,1431
117
+ hestia_earth/models/emepEea2019/so2ToAirFuelCombustion.py,sha256=OC53aE0uCmUxgZcqQjyhjjFPZ5U5Rdfv8l8wYihcYY4,1833
118
118
  hestia_earth/models/emepEea2019/tspToAirAnimalHousing.py,sha256=TaT5GyYK6MyJQHKApBe-u4fMjqXXdmuBEtUcRYnkhac,1381
119
- hestia_earth/models/emepEea2019/utils.py,sha256=oTHjbRRwJZv_tpO9MOlfpyQRmN0a1kvEZsVHUPliZpQ,4014
119
+ hestia_earth/models/emepEea2019/utils.py,sha256=YIHxVu4GwCbxBI5FzsmJ91itWNGx0vnBTCePSwlCnz8,5629
120
120
  hestia_earth/models/emissionNotRelevant/__init__.py,sha256=yAunIZI_4nGV0khRiGhbZAmXmMiuICzEH-pvzWX1lpM,3000
121
121
  hestia_earth/models/environmentalFootprintV3_1/__init__.py,sha256=tF2WrWiV1Wzi2vnRiNXdfPWfmVxgVu9w9-7eA6PA7-s,473
122
122
  hestia_earth/models/environmentalFootprintV3_1/environmentalFootprintSingleOverallScore.py,sha256=tRx2rRlSDupAWTfB9MqvqwrUCWHy-r-3gHjbgVOYLTs,5239
@@ -205,7 +205,7 @@ hestia_earth/models/hestia/landTransformation100YearAverageDuringCycle.py,sha256
205
205
  hestia_earth/models/hestia/landTransformation20YearAverageDuringCycle.py,sha256=1StzrYhMsX-hdwBTeLnLMZWl5EEnCoEYpGPRkqy8a-A,1016
206
206
  hestia_earth/models/hestia/liveAnimal.py,sha256=95HfqgFA_qRhdIeR2X5MJ9zzIm4nMHDvJ0BCnuTYe5Q,3860
207
207
  hestia_earth/models/hestia/longFallowRatio.py,sha256=LkJaER1VNDI5351-oC8tru-LgiPK3sNMg0NhB5ic9RE,1690
208
- hestia_earth/models/hestia/management.py,sha256=MhZ7eIE6jMReGbZqGKEZ6Gj7Zug4wceEdFm4MU9y36U,11060
208
+ hestia_earth/models/hestia/management.py,sha256=TJRdiV5XQBtK3YBOZsC-Off-9RMYrvYgkzylpPVRizw,11281
209
209
  hestia_earth/models/hestia/materialAndSubstrate.py,sha256=abmM_7FOY5yaNb2yZEm-ncI4wFFcbzaebtnG9XWEA6M,5130
210
210
  hestia_earth/models/hestia/milkYield.py,sha256=__3AdxRTUTWwS_GsqxFpPGklmTnnpADiN0khlRCMAss,5541
211
211
  hestia_earth/models/hestia/netPrimaryProduction.py,sha256=uU4AZ7X6tbtWgR5YClA_aLpYWtlivq9lPQGZgt3-qoQ,1856
@@ -444,7 +444,7 @@ hestia_earth/models/linkedImpactAssessment/utils.py,sha256=S1zlux02gU2Lajrtoq-zQ
444
444
  hestia_earth/models/mocking/__init__.py,sha256=9VX50c-grz-snfd-7MBS0KfF7AadtbKuj7kK6PqtsgE,687
445
445
  hestia_earth/models/mocking/build_mock_search.py,sha256=p15ccEUmkmLp1RiGNznxMz3OFHbI8P1-29ExuohiQN8,1355
446
446
  hestia_earth/models/mocking/mock_search.py,sha256=ccFe_WrI73JElFmxp4hPNLCX7eeU--lBC1JFR901KJY,1069
447
- hestia_earth/models/mocking/search-results.json,sha256=IhD3vmuKGB5U2y3b_jQbiKjaWKeQaToZIhWqbK9o9KI,162459
447
+ hestia_earth/models/mocking/search-results.json,sha256=lb0aRVXU24w4ofPm58jtYWOzq32DTopjaUDnD0SeBDQ,162462
448
448
  hestia_earth/models/pooreNemecek2018/__init__.py,sha256=nPboL7ULJzL5nJD5q7q9VOZt_fxbKVm8fmn1Az5YkVY,417
449
449
  hestia_earth/models/pooreNemecek2018/aboveGroundCropResidueTotal.py,sha256=Qt-mel4dkhK6N5uUOutNOinCTFjbjtGzITaaI0LvYc4,2396
450
450
  hestia_earth/models/pooreNemecek2018/belowGroundCropResidue.py,sha256=JT0RybbvWVlo01FO8K0Yj41HrEaJT3Kj1xfayr2X-xw,2315
@@ -591,7 +591,7 @@ hestia_earth/models/utils/animalProduct.py,sha256=M5IunAKGY6oZv3j1Ascl34ywyeLWAp
591
591
  hestia_earth/models/utils/aquacultureManagement.py,sha256=dxrbC1Xf140cohxTbSw6TxLAnAASWTdNZwBBam4yQnw,171
592
592
  hestia_earth/models/utils/array_builders.py,sha256=ko1pDZKaUudZqxOZ99vJamKAdoR6ND4ZmxVrYH6YjPc,19498
593
593
  hestia_earth/models/utils/background_emissions.py,sha256=R0tCA63q1_2DaZ87oI7FFjZsxAZ4Zds3Rr4fDf9KhkM,1850
594
- hestia_earth/models/utils/blank_node.py,sha256=KZizahEIqZafxJ_OXL0za7QILc4AledEnHDQoxyaNI8,55961
594
+ hestia_earth/models/utils/blank_node.py,sha256=zQhMFG4o7kUQY0J_7g84E8E1hwatSRZINTUb6fELB2s,56040
595
595
  hestia_earth/models/utils/cache_sources.py,sha256=MBkrPpjwNiC4ApDjeYVHZjWBbpvAerXRDrMHpjasAZ0,377
596
596
  hestia_earth/models/utils/completeness.py,sha256=iRG4uviOAQQ4T2Nr4LlelPVTS_F1felGZNJYxek_JG8,1239
597
597
  hestia_earth/models/utils/constant.py,sha256=DmB3VVuoh7Pz2QDBJqiUG6yAML2i0fOy1BPuPHmhT1w,3442
@@ -743,16 +743,16 @@ tests/models/ecoalimV9/test_impact_assessment.py,sha256=9Br_jis2MT85kS1IvBfPE9x7
743
743
  tests/models/edip2003/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
744
744
  tests/models/edip2003/test_ozoneDepletionPotential.py,sha256=z0kimdTxzSr8_K5eScbkxq2SB9nbBp41IHqVNR4Nh4Y,688
745
745
  tests/models/emepEea2019/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
746
- tests/models/emepEea2019/test_co2ToAirFuelCombustion.py,sha256=z1H17R_Erox2dMg8xylGB0qt9BMZSwfLAoEMVv9z878,1518
747
- tests/models/emepEea2019/test_n2OToAirFuelCombustionDirect.py,sha256=4uemriZAyJBSn-xMttRpxqVHOFNBXlboVODHQYl65zQ,1524
746
+ tests/models/emepEea2019/test_co2ToAirFuelCombustion.py,sha256=SrCx1-mW0s-flisF9Zf6W_A8VtJ67sWga8pGgS713b8,1135
747
+ tests/models/emepEea2019/test_n2OToAirFuelCombustionDirect.py,sha256=dTkrj2i5QibBuHaCgV8n2dB02y0nJAwhR35WcOquHOQ,1141
748
748
  tests/models/emepEea2019/test_nh3ToAirExcreta.py,sha256=lTPftCJinvokmgUcUikl8hN_axFa8OyCTXvL0PaSRFg,1111
749
749
  tests/models/emepEea2019/test_nh3ToAirInorganicFertiliser.py,sha256=f623Pp6XTt9YPDr2QymAJEQ_yfx0_TZGndmawD8ZX98,2134
750
- tests/models/emepEea2019/test_noxToAirFuelCombustion.py,sha256=HpuzWyFmfatFXwTZd8TVpHb6Kfj2Ru3IO1gHnSiuKtQ,1518
750
+ tests/models/emepEea2019/test_noxToAirFuelCombustion.py,sha256=iFVQVYImXxB5JE8b38UAUG4q8grfbniZi1cWdLQoViE,1135
751
751
  tests/models/emepEea2019/test_pm10ToAirAnimalHousing.py,sha256=xGlQeJkdP638zbHivxAqvliZCRpcogMFZYVCMWw6j3c,715
752
752
  tests/models/emepEea2019/test_pm25ToAirAnimalHousing.py,sha256=cs3UaJ7ucCryOaQy0sbL9AiuC8l_N7uywmPZHcr3pC0,715
753
- tests/models/emepEea2019/test_so2ToAirFuelCombustion.py,sha256=zRTyeeQM1fRdRVFWbtCNndaddDbKHU1xLzmp_psDceE,1518
753
+ tests/models/emepEea2019/test_so2ToAirFuelCombustion.py,sha256=RkC_ux5bxo6bIdcXIG_97uRstWXBnmZO3DOW4IfgRx0,1135
754
754
  tests/models/emepEea2019/test_tspToAirAnimalHousing.py,sha256=4MNDsxIeUk5_3IvZwEZslxgoPNyQN9OQFDNY3uGNX6E,714
755
- tests/models/emepEea2019/test_utils.py,sha256=G6z8tEfWM0OPnUBaFCQgQyEi5-kRF_DqsqdYaPnzR_I,8761
755
+ tests/models/emepEea2019/test_utils.py,sha256=MUIeHgcCHLhbYWgleKIiKqO2Q4RX321J53YpOt9cogA,7060
756
756
  tests/models/environmentalFootprintV3_1/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
757
757
  tests/models/environmentalFootprintV3_1/test_environmentalFootprintSingleOverallScore.py,sha256=F4oz4UadhpBlyh4JvLPOWAxGSIKnJVTTDaSzOT3Ihgk,4909
758
758
  tests/models/environmentalFootprintV3_1/test_freshwaterEcotoxicityPotentialCtue.py,sha256=WE-DcerljCjXMYE4f3Sv5ZCVHP0oTjbWkOGuvaa4p10,926
@@ -841,7 +841,7 @@ tests/models/hestia/test_landTransformation100YearAverageDuringCycle.py,sha256=3
841
841
  tests/models/hestia/test_landTransformation20YearAverageDuringCycle.py,sha256=bUByojQuVeuCfko1_2YtNJi1PT9yktHlcbPi_p-MPvk,1001
842
842
  tests/models/hestia/test_liveAnimal.py,sha256=3K9cL1fwr6LlBl1_D8zIaeCOuiExqkDEU7BXx1JK_dk,2139
843
843
  tests/models/hestia/test_longFallowRatio.py,sha256=OVd6NByAXeCAOx9ux_m8IJwnEF-fqIaBOoKFSGWhyO0,1513
844
- tests/models/hestia/test_management.py,sha256=h5rNqAgh3ehTlH4MEGBp4ryhZOoA2EXj_Q3lZcufbUk,1738
844
+ tests/models/hestia/test_management.py,sha256=p7j5ooACr0XBf2-hZWwwYE0-sfsoakIa2qKZhE32ZUQ,1800
845
845
  tests/models/hestia/test_materialsAndSubstrate.py,sha256=szM6aBBc1_9MDQFM1-OiW4SOKvEIO6mYYEpjHB-wI9g,1430
846
846
  tests/models/hestia/test_milkYield.py,sha256=m7SRiKb_u8SDF7Q5gX39AKr4bsrNqibXgMgzSmJJEPA,1778
847
847
  tests/models/hestia/test_netPrimaryProduction.py,sha256=--q6NB90gmpeJNBR16l3AgBsXGXwww_d1vOcWiMa-k8,1110
@@ -1243,8 +1243,8 @@ tests/orchestrator/strategies/run/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeR
1243
1243
  tests/orchestrator/strategies/run/test_add_blank_node_if_missing.py,sha256=K4xg4UAXfNhSaLyknKVPO7MGBF44Z_gD7CuZ_pe28gU,3512
1244
1244
  tests/orchestrator/strategies/run/test_add_key_if_missing.py,sha256=hKwvk1ohcBVnQUCTiDhRW99J0xEa29BpwFi1KC0yWLE,329
1245
1245
  tests/orchestrator/strategies/run/test_always.py,sha256=w5-Dhp6yLzgZGAeMRz3OrqZbbAed9gZ1O266a3z9k7w,134
1246
- hestia_earth_models-0.70.5.dist-info/LICENSE,sha256=TD25LoiRJsA5CPUNrcyt1PXlGcbUGFMAeZoBcfCrCNE,1154
1247
- hestia_earth_models-0.70.5.dist-info/METADATA,sha256=eP_74Ax32zchMTjyt6wWEglIFGifvoFlt5jIXXofrNo,4045
1248
- hestia_earth_models-0.70.5.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
1249
- hestia_earth_models-0.70.5.dist-info/top_level.txt,sha256=1dqA9TqpOLTEgpqa-YBsmbCmmNU1y56AtfFGEceZ2A0,19
1250
- hestia_earth_models-0.70.5.dist-info/RECORD,,
1246
+ hestia_earth_models-0.70.6.dist-info/LICENSE,sha256=TD25LoiRJsA5CPUNrcyt1PXlGcbUGFMAeZoBcfCrCNE,1154
1247
+ hestia_earth_models-0.70.6.dist-info/METADATA,sha256=UeHwB1HpSIPArmEhOgJPi80K2xc9CP3Ux_fDfaJ617w,4045
1248
+ hestia_earth_models-0.70.6.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
1249
+ hestia_earth_models-0.70.6.dist-info/top_level.txt,sha256=1dqA9TqpOLTEgpqa-YBsmbCmmNU1y56AtfFGEceZ2A0,19
1250
+ hestia_earth_models-0.70.6.dist-info/RECORD,,
@@ -2,26 +2,13 @@ from unittest.mock import patch
2
2
  import json
3
3
  from tests.utils import fixtures_path, fake_new_emission
4
4
 
5
- from hestia_earth.models.emepEea2019.co2ToAirFuelCombustion import MODEL, TERM_ID, run, _should_run
5
+ from hestia_earth.models.emepEea2019.co2ToAirFuelCombustion import MODEL, TERM_ID, run
6
6
 
7
7
  class_path = f"hestia_earth.models.{MODEL}.{TERM_ID}"
8
8
  model_utils_path = f"hestia_earth.models.{MODEL}.utils"
9
9
  fixtures_folder = f"{fixtures_path}/{MODEL}/{TERM_ID}"
10
10
 
11
11
 
12
- @patch(f"{class_path}.get_fuel_values")
13
- def test_should_run(mock_get_fuel_values):
14
- # no fuel values => no run
15
- mock_get_fuel_values.return_value = []
16
- should_run, *args = _should_run({})
17
- assert not should_run
18
-
19
- # with fuel values => run
20
- mock_get_fuel_values.return_value = [0]
21
- should_run, *args = _should_run({})
22
- assert should_run is True
23
-
24
-
25
12
  @patch(f"{model_utils_path}._new_emission", side_effect=fake_new_emission)
26
13
  def test_run(*args):
27
14
  with open(f"{fixtures_folder}/cycle.jsonld", encoding='utf-8') as f:
@@ -2,26 +2,13 @@ from unittest.mock import patch
2
2
  import json
3
3
  from tests.utils import fixtures_path, fake_new_emission
4
4
 
5
- from hestia_earth.models.emepEea2019.n2OToAirFuelCombustionDirect import MODEL, TERM_ID, run, _should_run
5
+ from hestia_earth.models.emepEea2019.n2OToAirFuelCombustionDirect import MODEL, TERM_ID, run
6
6
 
7
7
  class_path = f"hestia_earth.models.{MODEL}.{TERM_ID}"
8
8
  model_utils_path = f"hestia_earth.models.{MODEL}.utils"
9
9
  fixtures_folder = f"{fixtures_path}/{MODEL}/{TERM_ID}"
10
10
 
11
11
 
12
- @patch(f"{class_path}.get_fuel_values")
13
- def test_should_run(mock_get_fuel_values):
14
- # no fuel values => no run
15
- mock_get_fuel_values.return_value = []
16
- should_run, *args = _should_run({})
17
- assert not should_run
18
-
19
- # with fuel values => run
20
- mock_get_fuel_values.return_value = [0]
21
- should_run, *args = _should_run({})
22
- assert should_run is True
23
-
24
-
25
12
  @patch(f"{model_utils_path}._new_emission", side_effect=fake_new_emission)
26
13
  def test_run(*args):
27
14
  with open(f"{fixtures_folder}/cycle.jsonld", encoding='utf-8') as f:
@@ -2,26 +2,13 @@ from unittest.mock import patch
2
2
  import json
3
3
  from tests.utils import fixtures_path, fake_new_emission
4
4
 
5
- from hestia_earth.models.emepEea2019.noxToAirFuelCombustion import MODEL, TERM_ID, run, _should_run
5
+ from hestia_earth.models.emepEea2019.noxToAirFuelCombustion import MODEL, TERM_ID, run
6
6
 
7
7
  class_path = f"hestia_earth.models.{MODEL}.{TERM_ID}"
8
8
  model_utils_path = f"hestia_earth.models.{MODEL}.utils"
9
9
  fixtures_folder = f"{fixtures_path}/{MODEL}/{TERM_ID}"
10
10
 
11
11
 
12
- @patch(f"{class_path}.get_fuel_values")
13
- def test_should_run(mock_get_fuel_values):
14
- # no fuel values => no run
15
- mock_get_fuel_values.return_value = []
16
- should_run, *args = _should_run({})
17
- assert not should_run
18
-
19
- # with fuel values => run
20
- mock_get_fuel_values.return_value = [0]
21
- should_run, *args = _should_run({})
22
- assert should_run is True
23
-
24
-
25
12
  @patch(f"{model_utils_path}._new_emission", side_effect=fake_new_emission)
26
13
  def test_run(*args):
27
14
  with open(f"{fixtures_folder}/cycle.jsonld", encoding='utf-8') as f:
@@ -2,26 +2,13 @@ from unittest.mock import patch
2
2
  import json
3
3
  from tests.utils import fixtures_path, fake_new_emission
4
4
 
5
- from hestia_earth.models.emepEea2019.so2ToAirFuelCombustion import MODEL, TERM_ID, run, _should_run
5
+ from hestia_earth.models.emepEea2019.so2ToAirFuelCombustion import MODEL, TERM_ID, run
6
6
 
7
7
  class_path = f"hestia_earth.models.{MODEL}.{TERM_ID}"
8
8
  model_utils_path = f"hestia_earth.models.{MODEL}.utils"
9
9
  fixtures_folder = f"{fixtures_path}/{MODEL}/{TERM_ID}"
10
10
 
11
11
 
12
- @patch(f"{class_path}.get_fuel_values")
13
- def test_should_run(mock_get_fuel_values):
14
- # no fuel values => no run
15
- mock_get_fuel_values.return_value = []
16
- should_run, *args = _should_run({})
17
- assert not should_run
18
-
19
- # with fuel values => run
20
- mock_get_fuel_values.return_value = [0]
21
- should_run, *args = _should_run({})
22
- assert should_run is True
23
-
24
-
25
12
  @patch(f"{model_utils_path}._new_emission", side_effect=fake_new_emission)
26
13
  def test_run(*args):
27
14
  with open(f"{fixtures_folder}/cycle.jsonld", encoding='utf-8') as f:
@@ -1,8 +1,6 @@
1
- from unittest.mock import patch
2
-
3
1
  import pytest
4
2
 
5
- from hestia_earth.models.emepEea2019.utils import get_fuel_values, should_run_animal, _duration_in_housing
3
+ from hestia_earth.models.emepEea2019.utils import should_run_animal, _duration_in_housing
6
4
 
7
5
  class_path = 'hestia_earth.models.emepEea2019.utils'
8
6
  TERMS = [
@@ -11,52 +9,6 @@ TERMS = [
11
9
  ]
12
10
 
13
11
 
14
- @patch(f"{class_path}._is_term_type_complete", return_value=True)
15
- def test_get_fuel_values_no_inputs_complete(*args):
16
- cycle = {'@type': 'Cycle', 'inputs': []}
17
- assert get_fuel_values('co2ToAirFuelCombustion', cycle, '') == [0]
18
-
19
-
20
- @patch(f"{class_path}._is_term_type_complete", return_value=False)
21
- def test_get_fuel_values_no_inputs_incomplete(*args):
22
- cycle = {'@type': 'Cycle', 'inputs': []}
23
- assert get_fuel_values('co2ToAirFuelCombustion', cycle, '') == []
24
-
25
- cycle = {'@type': 'Transformation', 'inputs': []}
26
- assert get_fuel_values('co2ToAirFuelCombustion', cycle, '') == []
27
-
28
-
29
- def test_get_fuel_values(*args):
30
- cycle = {
31
- '@type': 'Cycle',
32
- 'inputs': [
33
- {
34
- 'term': {'@id': 'diesel', 'termType': 'fuel'},
35
- 'value': [100]
36
- },
37
- {
38
-
39
- 'term': {'@id': 'diesel', 'termType': 'fuel'},
40
- 'operation': {'@id': 'crushingWoodMachineUnspecified', 'termType': 'operation'},
41
- 'value': [200]
42
- },
43
- {
44
-
45
- 'term': {'@id': 'diesel', 'termType': 'fuel'},
46
- 'operation': {'@id': 'helicopterUseOperationUnspecified', 'termType': 'operation'},
47
- 'value': [150]
48
- },
49
- {
50
- 'term': {'@id': 'marineGasOil', 'termType': 'fuel'},
51
- 'operation': {'@id': 'crushingWoodMachineUnspecified', 'termType': 'operation'},
52
- 'value': [50]
53
- }
54
- ]
55
- }
56
- result = get_fuel_values('co2ToAirFuelCombustion', cycle, 'co2ToAirFuelCombustionEmepEea2019')
57
- assert result == [317.0, 632.0, 475.5, 158.5]
58
-
59
-
60
12
  @pytest.mark.parametrize(
61
13
  "test_name,cycle,expected_duration",
62
14
  [
@@ -13,7 +13,8 @@ fixtures_folder = os.path.join(fixtures_path, MODEL, MODEL_KEY)
13
13
  _LAND_COVER_TERM_BY_SITE_TYPE = {
14
14
  SiteSiteType.ANIMAL_HOUSING.value: "animalHousing",
15
15
  SiteSiteType.CROPLAND.value: "cropland",
16
- SiteSiteType.AGRI_FOOD_PROCESSOR.value: "agriFoodProcessor"
16
+ SiteSiteType.AGRI_FOOD_PROCESSOR.value: "agriFoodProcessor",
17
+ SiteSiteType.PERMANENT_PASTURE.value: "permanentPasture"
17
18
  }
18
19
  _folders = [d for d in os.listdir(fixtures_folder) if os.path.isdir(os.path.join(fixtures_folder, d))]
19
20