def test_WaspGridSiteDistanceClass(site): wgs = WaspGridSite( site._ds, distance=TerrainFollowingDistance(distance_resolution=2000)) assert wgs.distance.distance_resolution == 2000 assert wgs.distance.__call__.__func__ == TerrainFollowingDistance( ).__call__.__func__ wgs = WaspGridSite(site._ds, distance=StraightDistance()) assert wgs.distance.__call__.__func__ == StraightDistance( ).__call__.__func__
def test_speed_up_using_pickle(): pkl_fn = ParqueFicticio_path + "ParqueFicticio.pkl" if os.path.exists(pkl_fn): os.remove(pkl_fn) start = time.time() site = WaspGridSite.from_wasp_grd(ParqueFicticio_path, speedup_using_pickle=False) time_wo_pkl = time.time() - start site = WaspGridSite.from_wasp_grd(ParqueFicticio_path, speedup_using_pickle=True) assert os.path.exists(pkl_fn) start = time.time() site = WaspGridSite.from_wasp_grd(ParqueFicticio_path, speedup_using_pickle=True) time_w_pkl = time.time() - start npt.assert_array_less(time_w_pkl * 10, time_wo_pkl)
def __init__(self, distance=TerrainFollowingDistance(distance_resolution=2000), mode='valid'): ds = load_wasp_grd(ParqueFicticio_path, speedup_using_pickle=True) WaspGridSite.__init__(self, ds, distance, mode) self.initial_position = np.array([ [263655.0, 6506601.0], [263891.1, 6506394.0], [264022.2, 6506124.0], [264058.9, 6505891.0], [264095.6, 6505585.0], [264022.2, 6505365.0], [264022.2, 6505145.0], [263936.5, 6504802.0], ])
def test_speed_up_using_pickle_wrong_pkl(): pkl_fn = ParqueFicticio_path + "ParqueFicticio.pkl" if os.path.exists(pkl_fn): os.remove(pkl_fn) shutil.copy(__file__, pkl_fn) site = WaspGridSite.from_wasp_grd(ParqueFicticio_path, speedup_using_pickle=True)
def test_additional_input(): site = ParqueFicticioSite() wgs = WaspGridSite(site._ds, distance=TerrainFollowingDistance(distance_resolution=2000)) wgs.interp_funcs_initialization(['ws_mean']) x, y = site.initial_position.T h = 70 * np.ones_like(x) ws_mean, = wgs.interpolate(['ws_mean'], x, y, h) npt.assert_array_almost_equal(ws_mean[0, :50], np.array([4.77080802, 4.77216214, 4.77351626, 4.77487037, 4.77622449, 4.77757861, 4.77893273, 4.78028685, 4.78164097, 4.78299508, 4.7843492, 4.78570332, 4.78705744, 4.78841156, 4.78976567, 4.79111979, 4.79247391, 4.79382803, 4.79518215, 4.79653626, 4.79789038, 4.7992445, 4.80059862, 4.80195274, 4.80330685, 4.80466097, 4.80601509, 4.80736921, 4.80872333, 4.81007744, 4.81143156, 4.87114138, 4.9308512, 4.99056102, 5.05027084, 5.10998066, 5.16969047, 5.22940029, 5.28911011, 5.34881993, 5.40852975, 5.46823957, 5.52794939, 5.5876592, 5.64736902, 5.70707884, 5.76678866, 5.82649848, 5.8862083, 5.94591812]))
def test_missing_path(): with pytest.raises(NotImplementedError): WaspGridSite.from_wasp_grd("missing_path/", speedup_using_pickle=True) with pytest.raises(Exception, match='Path was not a directory'): WaspGridSite.from_wasp_grd("missing_path/", speedup_using_pickle=False)
def test_one_layer(): site = WaspGridSite.from_wasp_grd(os.path.dirname(one_layer.__file__) + "/", speedup_using_pickle=False)