def test_delegated_binary_predicates(predicate_name): vector_1 = GeoVector(Polygon([(0, 0), (1, 0), (1, 1), (0, 1)])) vector_2 = GeoVector(Polygon([(0.5, 0), (1.5, 0), (1.5, 1), (0.5, 1)])) assert (getattr(vector_1, predicate_name)(vector_2) == getattr( vector_1.get_shape(vector_1.crs), predicate_name)(vector_2.get_shape(vector_2.crs)))
def test_delegated_operations(operation_name): vector_1 = GeoVector(Polygon([(0, 0), (1, 0), (1, 1), (0, 1)])) vector_2 = GeoVector(Polygon([(0.5, 0), (1.5, 0), (1.5, 1), (0.5, 1)])) result_vector = getattr(vector_1, operation_name)(vector_2) assert (result_vector.get_shape(result_vector.crs) == getattr(vector_1.get_shape(vector_1.crs), operation_name)(vector_2.get_shape(vector_2.crs)))
def test_rasterize_without_bounds(mock_rasterize): gv = GeoVector(Polygon.from_bounds(0, 0, 1, 1)) gv.rasterize(dest_resolution=0.1, fill_value=29, nodata_value=-19) expected_shape = [gv.get_shape(gv.crs)] expected_bounds = gv.envelope.get_shape(gv.crs) mock_rasterize.assert_called_with(expected_shape, gv.crs, expected_bounds, 0.1, 29, -19)
def test_rasterize_with_polygon_bounds(mock_rasterize): gv = GeoVector(Polygon.from_bounds(0, 0, 1, 1)) expected_bounds = Polygon.from_bounds(0.1, 0.1, 2, 2) bounds = expected_bounds gv.rasterize(0.00001, bounds=bounds) expected_shape = [gv.get_shape(gv.crs)] mock_rasterize.assert_called_with(expected_shape, gv.crs, expected_bounds, 0.00001, None, None)
def test_rasterize_with_geovector_bounds(mock_rasterize): gv = GeoVector(Polygon.from_bounds(0, 0, 1, 1)) expected_bounds = Polygon.from_bounds(0.1, 0.1, 2, 2) bounds = GeoVector(expected_bounds, crs=gv.crs) gv.rasterize(0.00001, bounds=bounds) expected_shape = [gv.get_shape(gv.crs)] mock_rasterize.assert_called_with(expected_shape, gv.crs, expected_bounds, 0.00001, fill_value=None, dtype=None)
def test_rasterize_with_crs(mock_rasterize): gv = GeoVector(Polygon.from_bounds(0, 0, 1, 1)) expected_crs = WEB_MERCATOR_CRS expected_bounds = Polygon.from_bounds(11132, 11132, 222639, 222684) bounds = GeoVector(Polygon.from_bounds(0.1, 0.1, 2, 2)) gv.rasterize(1000, bounds=bounds, crs=WEB_MERCATOR_CRS) expected_shape = [gv.get_shape(expected_crs)] args, kwargs = mock_rasterize.call_args assert args[0] == expected_shape assert args[1] == expected_crs assert args[2].equals_exact(expected_bounds, tolerance=0.5)
def test_delegated_unary_predicates(operation_name, test_param): vector = GeoVector(Polygon([(0, 0), (1, 0), (1, 1), (0, 1)])) assert (getattr(vector, operation_name)(test_param) == GeoVector( getattr(vector.get_shape(vector.crs), operation_name)(test_param), vector.crs))
def test_delegated_unary_predicates(predicate_name): vector = GeoVector(Polygon([(0, 0), (1, 0), (1, 1), (0, 1)])) assert getattr(vector, predicate_name) == getattr(vector.get_shape(vector.crs), predicate_name)
def test_delegated_properties(property_name): vector = GeoVector(Point(0, 10)) assert getattr(vector, property_name) == getattr(vector.get_shape(vector.crs), property_name)
def test_delegated_properties(property_name): vector = GeoVector(Polygon([(0, 0), (1, 0), (1, 1), (0, 1)])) assert getattr(vector, property_name).get_shape(vector.crs) == getattr( vector.get_shape(vector.crs), property_name)
def test_print(): vector = GeoVector(Point(0.0, 0.0)) assert '%s' % vector.crs in '%s' % vector assert '%s' % vector.get_shape(vector.crs) in '%s' % vector
def test_geovector_has_shape_and_default_crs(): shape = Point(0.0, 0.0) gv = GeoVector(shape) assert gv.get_shape(gv.crs) == shape assert gv.crs == DEFAULT_CRS