diff --git a/ensysmod/core/file_upload.py b/ensysmod/core/file_upload.py index 0e16b9d..7a9672b 100644 --- a/ensysmod/core/file_upload.py +++ b/ensysmod/core/file_upload.py @@ -278,6 +278,9 @@ def process_excel_file(file: TemporaryFile, db: Session, dataset_id: int, compon # for each column, create a time series for column in df.columns: + if column == "Unnamed: 0": + # Skip first unnamed column, because this is might be the index + continue request_dict = {data_key: df[column].tolist(), "region": column, "component": component_name} create_request = map_with_dataset_id(create_model, request_dict, dataset_id) create_or_update_time_series(crud_repo, db, create_request) diff --git a/examples/data/dataset-2/README.md b/examples/data/dataset-2/README.md new file mode 100644 index 0000000..544f39f --- /dev/null +++ b/examples/data/dataset-2/README.md @@ -0,0 +1,2 @@ +# Dataset 2 (Copy of Dataset 1) +... but with index column in excel files! \ No newline at end of file diff --git a/examples/data/dataset-2/commodities.json b/examples/data/dataset-2/commodities.json new file mode 100644 index 0000000..2ec82b2 --- /dev/null +++ b/examples/data/dataset-2/commodities.json @@ -0,0 +1,27 @@ +[ + { + "description": "Commodity zu Strom. Die Werte werden in elektrischen GW angegeben.", + "name": "Elektrizität", + "unit": "GW" + }, + { + "description": "Commodity zu Wasserstoff. Die Werte werden in GW H2 (zum Heizwert) angegeben.", + "name": "Wasserstoff", + "unit": "GW" + }, + { + "description": "Commodity zu Methan. Die Werte werden in GW CH4 (zum Heizwert) angegeben.", + "name": "Methan", + "unit": "GW" + }, + { + "description": "Commodity zu Bio Gas. Die Werte werden in GW Bio Gas (zum Heizwert) angegeben.", + "name": "Biogas", + "unit": "GW" + }, + { + "description": "Commodity zu CO2. Die Werte werden in Mio. t CO2 pro Stunde angegeben.", + "name": "CO2", + "unit": "Mio. t CO2/h" + } +] \ No newline at end of file diff --git a/examples/data/dataset-2/conversions/elektrolyseure/conversion.json b/examples/data/dataset-2/conversions/elektrolyseure/conversion.json new file mode 100644 index 0000000..be6776d --- /dev/null +++ b/examples/data/dataset-2/conversions/elektrolyseure/conversion.json @@ -0,0 +1,22 @@ +{ + "name": "Elektrolyseure", + "description": "Stellt Elektrolyseure dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.5, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0125, + "economic_lifetime": 10, + "commodity_unit": "Wasserstoff", + "conversion_factors": [ + { + "conversion_factor": -1.0, + "commodity": "Elektrizität" + }, + { + "conversion_factor": 0.7, + "commodity": "Wasserstoff" + } + ] +} \ No newline at end of file diff --git a/examples/data/dataset-2/conversions/gud-turbine-(biogas)/conversion.json b/examples/data/dataset-2/conversions/gud-turbine-(biogas)/conversion.json new file mode 100644 index 0000000..1fb23a3 --- /dev/null +++ b/examples/data/dataset-2/conversions/gud-turbine-(biogas)/conversion.json @@ -0,0 +1,22 @@ +{ + "name": "GuD-Turbine (Biogas)", + "description": "Stellt Gas-und Dampfturbinen für Biogas dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.7, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.021, + "economic_lifetime": 33, + "commodity_unit": "Biogas", + "conversion_factors": [ + { + "conversion_factor": 1.0, + "commodity": "Elektrizität" + }, + { + "conversion_factor": -1.5873, + "commodity": "Biogas" + } + ] +} \ No newline at end of file diff --git a/examples/data/dataset-2/conversions/gud-turbine-(methan)/conversion.json b/examples/data/dataset-2/conversions/gud-turbine-(methan)/conversion.json new file mode 100644 index 0000000..aaaf73b --- /dev/null +++ b/examples/data/dataset-2/conversions/gud-turbine-(methan)/conversion.json @@ -0,0 +1,22 @@ +{ + "name": "GuD-Turbine (Methan)", + "description": "Stellt Gas-und Dampfturbinen für Methan dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 10, + "commodity_unit": "Methan", + "conversion_factors": [ + { + "conversion_factor": 0.6, + "commodity": "Elektrizität" + }, + { + "conversion_factor": 1.0, + "commodity": "Methan" + } + ] +} \ No newline at end of file diff --git a/examples/data/dataset-2/conversions/gud-turbine-(wasserstoff)/conversion.json b/examples/data/dataset-2/conversions/gud-turbine-(wasserstoff)/conversion.json new file mode 100644 index 0000000..ca9008d --- /dev/null +++ b/examples/data/dataset-2/conversions/gud-turbine-(wasserstoff)/conversion.json @@ -0,0 +1,22 @@ +{ + "name": "GuD-Turbine (Wasserstoff)", + "description": "Stellt Gas-und Dampfturbinen für Wasserstoff dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.7, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.021, + "economic_lifetime": 33, + "commodity_unit": "Wasserstoff", + "conversion_factors": [ + { + "conversion_factor": 1.0, + "commodity": "Elektrizität" + }, + { + "conversion_factor": -1.5873, + "commodity": "Wasserstoff" + } + ] +} \ No newline at end of file diff --git a/examples/data/dataset-2/conversions/rsoec/conversion.json b/examples/data/dataset-2/conversions/rsoec/conversion.json new file mode 100644 index 0000000..b8f8da9 --- /dev/null +++ b/examples/data/dataset-2/conversions/rsoec/conversion.json @@ -0,0 +1,22 @@ +{ + "name": "rSOEC", + "description": "Stellt rSOEC dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.75, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.015, + "economic_lifetime": 10, + "commodity_unit": "Wasserstoff", + "conversion_factors": [ + { + "conversion_factor": -1.0, + "commodity": "Elektrizität" + }, + { + "conversion_factor": 0.6, + "commodity": "Wasserstoff" + } + ] +} \ No newline at end of file diff --git a/examples/data/dataset-2/conversions/rsofc/conversion.json b/examples/data/dataset-2/conversions/rsofc/conversion.json new file mode 100644 index 0000000..91b1fdd --- /dev/null +++ b/examples/data/dataset-2/conversions/rsofc/conversion.json @@ -0,0 +1,22 @@ +{ + "name": "rSOFC", + "description": "Stellt rSOFC dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.75, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.015, + "economic_lifetime": 10, + "commodity_unit": "Wasserstoff", + "conversion_factors": [ + { + "conversion_factor": 1.0, + "commodity": "Elektrizität" + }, + { + "conversion_factor": -1.66667, + "commodity": "Wasserstoff" + } + ] +} \ No newline at end of file diff --git a/examples/data/dataset-2/regions.json b/examples/data/dataset-2/regions.json new file mode 100644 index 0000000..0130b6f --- /dev/null +++ b/examples/data/dataset-2/regions.json @@ -0,0 +1,26 @@ +[ + { + "name": "Cluster 0" + }, + { + "name": "Cluster 1" + }, + { + "name": "Cluster 2" + }, + { + "name": "Cluster 3" + }, + { + "name": "Cluster 4" + }, + { + "name": "Cluster 5" + }, + { + "name": "Cluster 6" + }, + { + "name": "Cluster 7" + } +] \ No newline at end of file diff --git a/examples/data/dataset-2/sinks/co2-verbrauch/operationRateFix.xlsx b/examples/data/dataset-2/sinks/co2-verbrauch/operationRateFix.xlsx new file mode 100644 index 0000000..3b6a3f0 Binary files /dev/null and b/examples/data/dataset-2/sinks/co2-verbrauch/operationRateFix.xlsx differ diff --git a/examples/data/dataset-2/sinks/co2-verbrauch/sink.json b/examples/data/dataset-2/sinks/co2-verbrauch/sink.json new file mode 100644 index 0000000..be16379 --- /dev/null +++ b/examples/data/dataset-2/sinks/co2-verbrauch/sink.json @@ -0,0 +1,12 @@ +{ + "name": "CO2-Verbrauch", + "description": "Stellt den CO2-Verbrauch dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 10, + "commodity": "CO2" +} \ No newline at end of file diff --git "a/examples/data/dataset-2/sinks/elektrizit\303\244t-verbrauch/operationRateFix.xlsx" "b/examples/data/dataset-2/sinks/elektrizit\303\244t-verbrauch/operationRateFix.xlsx" new file mode 100644 index 0000000..2f2fa15 Binary files /dev/null and "b/examples/data/dataset-2/sinks/elektrizit\303\244t-verbrauch/operationRateFix.xlsx" differ diff --git "a/examples/data/dataset-2/sinks/elektrizit\303\244t-verbrauch/sink.json" "b/examples/data/dataset-2/sinks/elektrizit\303\244t-verbrauch/sink.json" new file mode 100644 index 0000000..7e8ed22 --- /dev/null +++ "b/examples/data/dataset-2/sinks/elektrizit\303\244t-verbrauch/sink.json" @@ -0,0 +1,12 @@ +{ + "name": "Elektrizität-Verbrauch", + "description": "Stellt den Elektrizität-Verbrauch dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 10, + "commodity": "Elektrizität" +} \ No newline at end of file diff --git a/examples/data/dataset-2/sinks/wasserstoff-verbrauch/operationRateFix.xlsx b/examples/data/dataset-2/sinks/wasserstoff-verbrauch/operationRateFix.xlsx new file mode 100644 index 0000000..bac1ab5 Binary files /dev/null and b/examples/data/dataset-2/sinks/wasserstoff-verbrauch/operationRateFix.xlsx differ diff --git a/examples/data/dataset-2/sinks/wasserstoff-verbrauch/sink.json b/examples/data/dataset-2/sinks/wasserstoff-verbrauch/sink.json new file mode 100644 index 0000000..3d36153 --- /dev/null +++ b/examples/data/dataset-2/sinks/wasserstoff-verbrauch/sink.json @@ -0,0 +1,12 @@ +{ + "name": "Wasserstoff-Verbrauch", + "description": "Stellt den Wasserstoff-Verbrauch dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 10, + "commodity": "Wasserstoff" +} \ No newline at end of file diff --git a/examples/data/dataset-2/sources/biogas-importe/operationRateMax.xlsx b/examples/data/dataset-2/sources/biogas-importe/operationRateMax.xlsx new file mode 100644 index 0000000..f294b38 Binary files /dev/null and b/examples/data/dataset-2/sources/biogas-importe/operationRateMax.xlsx differ diff --git a/examples/data/dataset-2/sources/biogas-importe/source.json b/examples/data/dataset-2/sources/biogas-importe/source.json new file mode 100644 index 0000000..860fd40 --- /dev/null +++ b/examples/data/dataset-2/sources/biogas-importe/source.json @@ -0,0 +1,13 @@ +{ + "name": "Biogas Importe", + "description": "Stellt die Biogas-Importe dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 10, + "commodity_cost": 5.409e-05, + "commodity": "Biogas" +} \ No newline at end of file diff --git a/examples/data/dataset-2/sources/natural-gas-importe/source.json b/examples/data/dataset-2/sources/natural-gas-importe/source.json new file mode 100644 index 0000000..2067c45 --- /dev/null +++ b/examples/data/dataset-2/sources/natural-gas-importe/source.json @@ -0,0 +1,13 @@ +{ + "name": "Natural Gas Importe", + "description": "Stellt die Natural Gas-Importe dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 10, + "commodity_cost": 3.31e-05, + "commodity": "Methan" +} \ No newline at end of file diff --git a/examples/data/dataset-2/sources/pv/capacityMax.xlsx b/examples/data/dataset-2/sources/pv/capacityMax.xlsx new file mode 100644 index 0000000..6c1ad18 Binary files /dev/null and b/examples/data/dataset-2/sources/pv/capacityMax.xlsx differ diff --git a/examples/data/dataset-2/sources/pv/operationRateMax.xlsx b/examples/data/dataset-2/sources/pv/operationRateMax.xlsx new file mode 100644 index 0000000..6e030ab Binary files /dev/null and b/examples/data/dataset-2/sources/pv/operationRateMax.xlsx differ diff --git a/examples/data/dataset-2/sources/pv/source.json b/examples/data/dataset-2/sources/pv/source.json new file mode 100644 index 0000000..5b776b1 --- /dev/null +++ b/examples/data/dataset-2/sources/pv/source.json @@ -0,0 +1,12 @@ +{ + "name": "PV", + "description": "Stellt die PV-Anlagen dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.65, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.013, + "economic_lifetime": 25, + "commodity": "Elektrizität" +} \ No newline at end of file diff --git a/examples/data/dataset-2/sources/run-of-river/capacityFix.xlsx b/examples/data/dataset-2/sources/run-of-river/capacityFix.xlsx new file mode 100644 index 0000000..d4e3b4c Binary files /dev/null and b/examples/data/dataset-2/sources/run-of-river/capacityFix.xlsx differ diff --git a/examples/data/dataset-2/sources/run-of-river/operationRateFix.xlsx b/examples/data/dataset-2/sources/run-of-river/operationRateFix.xlsx new file mode 100644 index 0000000..2819a83 Binary files /dev/null and b/examples/data/dataset-2/sources/run-of-river/operationRateFix.xlsx differ diff --git a/examples/data/dataset-2/sources/run-of-river/source.json b/examples/data/dataset-2/sources/run-of-river/source.json new file mode 100644 index 0000000..0b5d11f --- /dev/null +++ b/examples/data/dataset-2/sources/run-of-river/source.json @@ -0,0 +1,12 @@ +{ + "name": "Run-of-river", + "description": "Stellt die Laufwasser-Kraftwerke dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.208, + "economic_lifetime": 10, + "commodity": "Elektrizität" +} \ No newline at end of file diff --git a/examples/data/dataset-2/sources/wind-offshore/capacityMax.xlsx b/examples/data/dataset-2/sources/wind-offshore/capacityMax.xlsx new file mode 100644 index 0000000..2b1a0e4 Binary files /dev/null and b/examples/data/dataset-2/sources/wind-offshore/capacityMax.xlsx differ diff --git a/examples/data/dataset-2/sources/wind-offshore/operationRateMax.xlsx b/examples/data/dataset-2/sources/wind-offshore/operationRateMax.xlsx new file mode 100644 index 0000000..1714893 Binary files /dev/null and b/examples/data/dataset-2/sources/wind-offshore/operationRateMax.xlsx differ diff --git a/examples/data/dataset-2/sources/wind-offshore/source.json b/examples/data/dataset-2/sources/wind-offshore/source.json new file mode 100644 index 0000000..bd4b2f7 --- /dev/null +++ b/examples/data/dataset-2/sources/wind-offshore/source.json @@ -0,0 +1,12 @@ +{ + "name": "Wind Offshore", + "description": "Stellt die Wind Offshore-Anlagen dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 2.3, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.046, + "economic_lifetime": 20, + "commodity": "Elektrizität" +} \ No newline at end of file diff --git a/examples/data/dataset-2/sources/wind-onshore/capacityMax.xlsx b/examples/data/dataset-2/sources/wind-onshore/capacityMax.xlsx new file mode 100644 index 0000000..23cb337 Binary files /dev/null and b/examples/data/dataset-2/sources/wind-onshore/capacityMax.xlsx differ diff --git a/examples/data/dataset-2/sources/wind-onshore/operationRateMax.xlsx b/examples/data/dataset-2/sources/wind-onshore/operationRateMax.xlsx new file mode 100644 index 0000000..29f666a Binary files /dev/null and b/examples/data/dataset-2/sources/wind-onshore/operationRateMax.xlsx differ diff --git a/examples/data/dataset-2/sources/wind-onshore/source.json b/examples/data/dataset-2/sources/wind-onshore/source.json new file mode 100644 index 0000000..e422f09 --- /dev/null +++ b/examples/data/dataset-2/sources/wind-onshore/source.json @@ -0,0 +1,12 @@ +{ + "name": "Wind Onshore", + "description": "Stellt die Wind Onshore-Anlagen dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 1.1, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.022, + "economic_lifetime": 20, + "commodity": "Elektrizität" +} \ No newline at end of file diff --git a/examples/data/dataset-2/storages/li-ion-batterien/storage.json b/examples/data/dataset-2/storages/li-ion-batterien/storage.json new file mode 100644 index 0000000..71efabe --- /dev/null +++ b/examples/data/dataset-2/storages/li-ion-batterien/storage.json @@ -0,0 +1,18 @@ +{ + "name": "Li-ion Batterien", + "description": "Stellt Batterien dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.151, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.002, + "economic_lifetime": 22, + "charge_efficiency": 0.95, + "self_discharge": 4.23036e-05, + "charge_rate": 1.0, + "discharge_efficiency": 0.95, + "cyclic_lifetime": 10000, + "discharge_rate": 1.0, + "commodity": "Elektrizität" +} \ No newline at end of file diff --git a/examples/data/dataset-2/storages/pumpspeicher-kraftwerk/capacityFix.xlsx b/examples/data/dataset-2/storages/pumpspeicher-kraftwerk/capacityFix.xlsx new file mode 100644 index 0000000..2039634 Binary files /dev/null and b/examples/data/dataset-2/storages/pumpspeicher-kraftwerk/capacityFix.xlsx differ diff --git a/examples/data/dataset-2/storages/pumpspeicher-kraftwerk/storage.json b/examples/data/dataset-2/storages/pumpspeicher-kraftwerk/storage.json new file mode 100644 index 0000000..1b54c1f --- /dev/null +++ b/examples/data/dataset-2/storages/pumpspeicher-kraftwerk/storage.json @@ -0,0 +1,17 @@ +{ + "name": "Pumpspeicher-Kraftwerk", + "description": "Stellt Pumpspeicher-Kraftwerk dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.000153, + "economic_lifetime": 10, + "charge_efficiency": 0.88, + "self_discharge": 5.2181e-06, + "charge_rate": 0.16, + "discharge_efficiency": 0.88, + "discharge_rate": 0.12, + "commodity": "Elektrizität" +} \ No newline at end of file diff --git a/examples/data/dataset-2/storages/salzkavernen-(bio-gas)/capacityMax.xlsx b/examples/data/dataset-2/storages/salzkavernen-(bio-gas)/capacityMax.xlsx new file mode 100644 index 0000000..615f753 Binary files /dev/null and b/examples/data/dataset-2/storages/salzkavernen-(bio-gas)/capacityMax.xlsx differ diff --git a/examples/data/dataset-2/storages/salzkavernen-(bio-gas)/storage.json b/examples/data/dataset-2/storages/salzkavernen-(bio-gas)/storage.json new file mode 100644 index 0000000..b6c4382 --- /dev/null +++ b/examples/data/dataset-2/storages/salzkavernen-(bio-gas)/storage.json @@ -0,0 +1,17 @@ +{ + "name": "Salzkavernen (Bio Gas)", + "description": "Stellt Salzkavernen (Bio Gas) dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 4e-05, + "interest_rate": 0.08, + "shared_potential_id": "Existing salt caverns", + "capacity_variable": false, + "capacity_per_plant_unit": 443.0, + "opex_per_capacity": 1e-05, + "economic_lifetime": 30, + "state_of_charge_max": 1.0, + "charge_rate": 0.007124, + "state_of_charge_min": 0.33, + "discharge_rate": 0.007124, + "commodity": "Biogas" +} \ No newline at end of file diff --git a/examples/data/dataset-2/storages/salzkavernen-(wasserstoff)/capacityMax.xlsx b/examples/data/dataset-2/storages/salzkavernen-(wasserstoff)/capacityMax.xlsx new file mode 100644 index 0000000..615f753 Binary files /dev/null and b/examples/data/dataset-2/storages/salzkavernen-(wasserstoff)/capacityMax.xlsx differ diff --git a/examples/data/dataset-2/storages/salzkavernen-(wasserstoff)/storage.json b/examples/data/dataset-2/storages/salzkavernen-(wasserstoff)/storage.json new file mode 100644 index 0000000..aa98058 --- /dev/null +++ b/examples/data/dataset-2/storages/salzkavernen-(wasserstoff)/storage.json @@ -0,0 +1,17 @@ +{ + "name": "Salzkavernen (Wasserstoff)", + "description": "Stellt Salzkavernen (Wasserstoff) dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.00011, + "interest_rate": 0.08, + "shared_potential_id": "Existing salt caverns", + "capacity_variable": false, + "capacity_per_plant_unit": 133.0, + "opex_per_capacity": 0.00057, + "economic_lifetime": 30, + "state_of_charge_max": 1.0, + "charge_rate": 0.007124, + "state_of_charge_min": 0.33, + "discharge_rate": 0.007124, + "commodity": "Wasserstoff" +} \ No newline at end of file diff --git a/examples/data/dataset-2/transmissions/ac-leitungen/capacityFix.xlsx b/examples/data/dataset-2/transmissions/ac-leitungen/capacityFix.xlsx new file mode 100644 index 0000000..cfc4b44 Binary files /dev/null and b/examples/data/dataset-2/transmissions/ac-leitungen/capacityFix.xlsx differ diff --git a/examples/data/dataset-2/transmissions/ac-leitungen/distances.xlsx b/examples/data/dataset-2/transmissions/ac-leitungen/distances.xlsx new file mode 100644 index 0000000..71b1653 Binary files /dev/null and b/examples/data/dataset-2/transmissions/ac-leitungen/distances.xlsx differ diff --git a/examples/data/dataset-2/transmissions/ac-leitungen/transmission.json b/examples/data/dataset-2/transmissions/ac-leitungen/transmission.json new file mode 100644 index 0000000..9a85dc2 --- /dev/null +++ b/examples/data/dataset-2/transmissions/ac-leitungen/transmission.json @@ -0,0 +1,12 @@ +{ + "name": "AC Leitungen", + "description": "Stellt die AC-Leitungen dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 10, + "commodity": "Elektrizität" +} \ No newline at end of file diff --git a/examples/data/dataset-2/transmissions/dc-leitungen/capacityFix.xlsx b/examples/data/dataset-2/transmissions/dc-leitungen/capacityFix.xlsx new file mode 100644 index 0000000..09db48d Binary files /dev/null and b/examples/data/dataset-2/transmissions/dc-leitungen/capacityFix.xlsx differ diff --git a/examples/data/dataset-2/transmissions/dc-leitungen/distances.xlsx b/examples/data/dataset-2/transmissions/dc-leitungen/distances.xlsx new file mode 100644 index 0000000..c129b61 Binary files /dev/null and b/examples/data/dataset-2/transmissions/dc-leitungen/distances.xlsx differ diff --git a/examples/data/dataset-2/transmissions/dc-leitungen/transmission.json b/examples/data/dataset-2/transmissions/dc-leitungen/transmission.json new file mode 100644 index 0000000..638b9ad --- /dev/null +++ b/examples/data/dataset-2/transmissions/dc-leitungen/transmission.json @@ -0,0 +1,12 @@ +{ + "name": "DC-Leitungen", + "description": "Stellt die DC-Leitungen dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.0, + "interest_rate": 0.08, + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 10, + "commodity": "Elektrizität" +} \ No newline at end of file diff --git a/examples/data/dataset-2/transmissions/pipeline-(bio-gas)/capacityMax.xlsx b/examples/data/dataset-2/transmissions/pipeline-(bio-gas)/capacityMax.xlsx new file mode 100644 index 0000000..8a3457b Binary files /dev/null and b/examples/data/dataset-2/transmissions/pipeline-(bio-gas)/capacityMax.xlsx differ diff --git a/examples/data/dataset-2/transmissions/pipeline-(bio-gas)/distances.xlsx b/examples/data/dataset-2/transmissions/pipeline-(bio-gas)/distances.xlsx new file mode 100644 index 0000000..71b1653 Binary files /dev/null and b/examples/data/dataset-2/transmissions/pipeline-(bio-gas)/distances.xlsx differ diff --git a/examples/data/dataset-2/transmissions/pipeline-(bio-gas)/transmission.json b/examples/data/dataset-2/transmissions/pipeline-(bio-gas)/transmission.json new file mode 100644 index 0000000..67f1297 --- /dev/null +++ b/examples/data/dataset-2/transmissions/pipeline-(bio-gas)/transmission.json @@ -0,0 +1,13 @@ +{ + "name": "Pipeline (Bio Gas)", + "description": "Stellt die Pipeline (Bio Gas) dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 3.7e-05, + "interest_rate": 0.08, + "shared_potential_id": "pipelines", + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 40, + "commodity": "Biogas" +} \ No newline at end of file diff --git a/examples/data/dataset-2/transmissions/pipeline-(wasserstoff)/capacityMax.xlsx b/examples/data/dataset-2/transmissions/pipeline-(wasserstoff)/capacityMax.xlsx new file mode 100644 index 0000000..8a3457b Binary files /dev/null and b/examples/data/dataset-2/transmissions/pipeline-(wasserstoff)/capacityMax.xlsx differ diff --git a/examples/data/dataset-2/transmissions/pipeline-(wasserstoff)/distances.xlsx b/examples/data/dataset-2/transmissions/pipeline-(wasserstoff)/distances.xlsx new file mode 100644 index 0000000..9fc0792 Binary files /dev/null and b/examples/data/dataset-2/transmissions/pipeline-(wasserstoff)/distances.xlsx differ diff --git a/examples/data/dataset-2/transmissions/pipeline-(wasserstoff)/transmission.json b/examples/data/dataset-2/transmissions/pipeline-(wasserstoff)/transmission.json new file mode 100644 index 0000000..6b40318 --- /dev/null +++ b/examples/data/dataset-2/transmissions/pipeline-(wasserstoff)/transmission.json @@ -0,0 +1,13 @@ +{ + "name": "Pipeline (Wasserstoff)", + "description": "Stellt die Pipeline (Wasserstoff) dar", + "capacity_variable_domain": "CONTINUOUS", + "invest_per_capacity": 0.000177, + "interest_rate": 0.08, + "shared_potential_id": "pipelines", + "capacity_variable": false, + "capacity_per_plant_unit": 1.0, + "opex_per_capacity": 0.0, + "economic_lifetime": 40, + "commodity": "Wasserstoff" +} \ No newline at end of file diff --git a/tests/api/test_zip_upload.py b/tests/api/test_zip_upload.py index 5886189..07143ae 100644 --- a/tests/api/test_zip_upload.py +++ b/tests/api/test_zip_upload.py @@ -1,6 +1,7 @@ import os import tempfile import zipfile +import pytest from typing import Dict from zipfile import ZipFile @@ -10,26 +11,27 @@ from tests.utils import data_generator -def get_dataset_1_zip() -> str: +def get_dataset_zip(folder_name: str) -> str: """ Creates a zip archive from folder structure ../../examples/dataset-1/ """ # Create a temporary directory temp_dir = tempfile.mkdtemp() # create a zip file from the directory - zip_file_path = os.path.join(temp_dir, "dataset-1.zip") + zip_file_path = os.path.join(temp_dir, f"{folder_name}.zip") with zipfile.ZipFile(zip_file_path, 'w') as zip_file: project_root = os.path.abspath(os.path.join(os.path.dirname(__file__), "../..")) print(f"Project root: {project_root}") - for root, dirs, files in os.walk(f"{project_root}/examples/data/dataset-1/"): - acr_path = os.path.relpath(root, f"{project_root}/examples/data/dataset-1/") + for root, dirs, files in os.walk(f"{project_root}/examples/data/{folder_name}/"): + acr_path = os.path.relpath(root, f"{project_root}/examples/data/{folder_name}/") zip_file.write(root, acr_path) for file in files: zip_file.write(os.path.join(root, file), arcname=os.path.join(acr_path, file)) return zip_file_path -def test_upload_dataset(client: TestClient, db: Session, normal_user_headers: Dict[str, str]): +@pytest.mark.parametrize("data_folder", ["dataset-1", "dataset-2"]) +def test_upload_dataset(client: TestClient, db: Session, normal_user_headers: Dict[str, str], data_folder: str): """ Test creating a dataset. """ @@ -37,7 +39,7 @@ def test_upload_dataset(client: TestClient, db: Session, normal_user_headers: Di dataset = data_generator.random_existing_dataset(db) # Upload a zip file - zip_file_path = get_dataset_1_zip() + zip_file_path = get_dataset_zip("dataset-1") # print all the contents of the zip file print(f"Zip file contents of {zip_file_path}:")