Skip to content

Commit

Permalink
add test for creating mask hydro buffer
Browse files Browse the repository at this point in the history
  • Loading branch information
mdupaysign committed Jun 6, 2024
1 parent f8d0880 commit b79e75e
Showing 1 changed file with 44 additions and 0 deletions.
44 changes: 44 additions & 0 deletions test/vectors/test_create_mask_hydro_buffer.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
import os
import shutil
from pathlib import Path

import geopandas as gpd
from pyproj import CRS
from shapely.geometry import MultiPolygon

from lidro.create_virtual_point.vectors.create_mask_hydro_buffer import (
create_mask_hydro_buffer,
)

TMP_PATH = Path("./tmp/create_virtual_point/vectors/create_mask_hydro_buffer/")

file_mask = "./data/merge_mask_hydro/MaskHydro_merge.geojson"
output = Path("./tmp/create_virtual_point/vectors/create_mask_hydro_buffer/MaskHydro_merge_buffer.geojson")


def setup_module(module):
if TMP_PATH.is_dir():
shutil.rmtree(TMP_PATH)
os.makedirs(TMP_PATH)


def test_create_mask_hydro_buffer_default():
# Parameters
buffer = 2
crs = CRS.from_epsg(2154)

result = create_mask_hydro_buffer(file_mask, buffer, crs)

# Save the result to GeoJSON
d = {"nom": "mask_hydro_merge_buffer", "geometry": [result]}
gdf = gpd.GeoDataFrame(d, crs=crs)
gdf.to_file(output, driver="GeoJSON", crs=crs)

assert Path(output).exists()

gdf = gpd.read_file(output)

assert not gdf.empty # GeoDataFrame shouldn't empty
assert gdf.crs.to_string() == crs # CRS is identical

assert all(isinstance(geom, MultiPolygon) for geom in gdf.geometry) # All geometry should MultiPolygone

0 comments on commit b79e75e

Please sign in to comment.