@@ -210,6 +210,28 @@ def test_calc_impact_TC_pass(self):
210210 self .assertAlmostEqual (6.570532945599105e11 , impact .tot_value )
211211 self .assertAlmostEqual (6.512201157564421e09 * x , impact .aai_agg , 5 )
212212
213+ def test_calc_impact_TC_change_crs_pass (self ):
214+ """Test compute impact"""
215+ crs = "EPSG:4087"
216+ exp = ENT .exposures .copy ()
217+ exp .to_crs (crs )
218+ haz = deepcopy (HAZ )
219+ haz .centroids .to_crs (crs )
220+ icalc = ImpactCalc (exp , ENT .impact_funcs , haz )
221+ impact = icalc .impact ()
222+ self .assertEqual (icalc .n_events , len (impact .at_event ))
223+ self .assertEqual (0 , impact .at_event [0 ])
224+ self .assertEqual (0 , impact .at_event [7225 ])
225+ self .assertAlmostEqual (1.472482938320243e08 , impact .at_event [13809 ], delta = 1 )
226+ self .assertAlmostEqual (7.076504723057620e10 , impact .at_event [12147 ], delta = 1 )
227+ self .assertEqual (0 , impact .at_event [14449 ])
228+ self .assertEqual (icalc .n_exp_pnt , len (impact .eai_exp ))
229+ self .assertAlmostEqual (1.518553670803242e08 , impact .eai_exp [0 ], delta = 1 )
230+ self .assertAlmostEqual (1.373490457046383e08 , impact .eai_exp [25 ], 6 )
231+ self .assertAlmostEqual (1.066837260150042e08 , impact .eai_exp [49 ], 6 )
232+ self .assertAlmostEqual (6.570532945599105e11 , impact .tot_value )
233+ self .assertAlmostEqual (6.512201157564421e09 , impact .aai_agg , 5 )
234+
213235 def test_calc_impact_RF_pass (self ):
214236 haz = Hazard .from_hdf5 (get_test_file ("test_hazard_US_flood_random_locations" ))
215237 exp = Exposures .from_hdf5 (
0 commit comments