diff --git a/src/reports.jl b/src/reports.jl index c833f95..7cda2dd 100644 --- a/src/reports.jl +++ b/src/reports.jl @@ -181,10 +181,10 @@ function transportation_report(solution)::DataFrame round(dst_location_dict["Longitude (deg)"], digits=6), dst_location_dict["Input product"], year, - round(src_location_dict["Distance (km)"][year], digits=2), + round(src_location_dict["Distance (km)"], digits=2), round(src_location_dict["Amount (tonne)"][year], digits=2), round(src_location_dict["Amount (tonne)"][year] * - src_location_dict["Distance (km)"][year], + src_location_dict["Distance (km)"], digits=2), round(src_location_dict["Transportation cost (\$)"][year], digits=2), round(src_location_dict["Transportation energy (J)"][year] / 1e9, digits=2), @@ -234,10 +234,10 @@ function transportation_emissions_report(solution)::DataFrame round(dst_location_dict["Longitude (deg)"], digits=6), dst_location_dict["Input product"], year, - round(src_location_dict["Distance (km)"][year], digits=2), + round(src_location_dict["Distance (km)"], digits=2), round(src_location_dict["Amount (tonne)"][year], digits=2), round(src_location_dict["Amount (tonne)"][year] * - src_location_dict["Distance (km)"][year], + src_location_dict["Distance (km)"], digits=2), emission_name, round(emission_amount[year], digits=2), diff --git a/test/reports_test.jl b/test/reports_test.jl index eb19031..835b1aa 100644 --- a/test/reports_test.jl +++ b/test/reports_test.jl @@ -20,9 +20,21 @@ function check(func, expected_csv_filename::String) end @testset "Reports" begin - check(RELOG.write_plants_report, "fixtures/nimh_plants.csv") - check(RELOG.write_plant_outputs_report, "fixtures/nimh_plant_outputs.csv") - check(RELOG.write_plant_emissions_report, "fixtures/nimh_plant_emissions.csv") - check(RELOG.write_transportation_report, "fixtures/nimh_transportation.csv") - check(RELOG.write_transportation_emissions_report, "fixtures/nimh_transportation_emissions.csv") + @testset "from fixture" begin + check(RELOG.write_plants_report, "fixtures/nimh_plants.csv") + check(RELOG.write_plant_outputs_report, "fixtures/nimh_plant_outputs.csv") + check(RELOG.write_plant_emissions_report, "fixtures/nimh_plant_emissions.csv") + check(RELOG.write_transportation_report, "fixtures/nimh_transportation.csv") + check(RELOG.write_transportation_emissions_report, "fixtures/nimh_transportation_emissions.csv") + end + @testset "from solve" begin + solution = RELOG.solve("$(pwd())/../instances/s1.json") + tmp_filename = tempname() + # The following should not crash + RELOG.write_plants_report(solution, tmp_filename) + RELOG.write_plant_outputs_report(solution, tmp_filename) + RELOG.write_plant_emissions_report(solution, tmp_filename) + RELOG.write_transportation_report(solution, tmp_filename) + RELOG.write_transportation_emissions_report(solution, tmp_filename) + end end