Skip to content

Commit

Permalink
Update tests for auto unique_id assignment
Browse files Browse the repository at this point in the history
  • Loading branch information
EwoutH committed Sep 10, 2024
1 parent f1c0023 commit 89dc6c0
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 18 deletions.
12 changes: 6 additions & 6 deletions tests/test_AgentCreator.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ def tearDown(self) -> None:

def test_create_agent_with_crs(self):
agent = self.agent_creator_with_crs.create_agent(
geometry=Point(1, 1), unique_id=0
geometry=Point(1, 1)
)
self.assertIsInstance(agent, mg.GeoAgent)
self.assertEqual(agent.geometry, Point(1, 1))
Expand All @@ -65,7 +65,7 @@ def test_create_agent_with_crs(self):
def test_create_agent_without_crs(self):
with self.assertRaises(TypeError):
self.agent_creator_without_crs.create_agent(
geometry=Point(1, 1), unique_id=0
geometry=Point(1, 1)
)

def test_from_GeoDataFrame_with_default_geometry_name(self):
Expand Down Expand Up @@ -106,12 +106,12 @@ def test_from_GeoJSON_and_agent_creator_without_crs(self):

self.assertEqual(len(agents), 2)

self.assertEqual(agents[0].unique_id, 0)
self.assertEqual(agents[0].unique_id, 1)
self.assertEqual(agents[0].col1, "name1")
self.assertEqual(agents[0].geometry, Point(1.0, 2.0))
self.assertEqual(agents[0].crs, "epsg:4326")

self.assertEqual(agents[1].unique_id, 1)
self.assertEqual(agents[1].unique_id, 2)
self.assertEqual(agents[1].col1, "name2")
self.assertEqual(agents[1].geometry, Point(2.0, 1.0))
self.assertEqual(agents[1].crs, "epsg:4326")
Expand All @@ -121,7 +121,7 @@ def test_from_GeoJSON_and_agent_creator_with_crs(self):

self.assertEqual(len(agents), 2)

self.assertEqual(agents[0].unique_id, 0)
self.assertEqual(agents[0].unique_id, 1)
self.assertEqual(agents[0].col1, "name1")
self.assertTrue(
agents[0].geometry.equals_exact(
Expand All @@ -130,7 +130,7 @@ def test_from_GeoJSON_and_agent_creator_with_crs(self):
)
self.assertEqual(agents[0].crs, self.agent_creator_with_crs.crs)

self.assertEqual(agents[1].unique_id, 1)
self.assertEqual(agents[1].unique_id, 2)
self.assertEqual(agents[1].col1, "name2")
self.assertTrue(
agents[1].geometry.equals_exact(
Expand Down
11 changes: 2 additions & 9 deletions tests/test_GeoSpace.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,24 +23,20 @@ def setUp(self) -> None:
self.agents = [
self.agent_creator.create_agent(
geometry=geometry,
unique_id=uuid.uuid4().int,
)
for geometry in self.geometries
]
self.polygon_agent = mg.GeoAgent(
unique_id=uuid.uuid4().int,
model=self.model,
geometry=Polygon([(0, 0), (0, 2), (2, 2), (2, 0)]),
crs="epsg:3857",
)
self.touching_agent = mg.GeoAgent(
unique_id=uuid.uuid4().int,
model=self.model,
geometry=Polygon([(2, 0), (2, 2), (4, 2), (4, 0)]),
crs="epsg:3857",
)
self.disjoint_agent = mg.GeoAgent(
unique_id=uuid.uuid4().int,
model=self.model,
geometry=Polygon([(10, 10), (10, 12), (12, 12), (12, 10)]),
crs="epsg:3857",
Expand Down Expand Up @@ -145,19 +141,16 @@ def test_get_agents_as_GeoDataFrame(self):
self.geo_space.add_agents(self.agents)

agents_list = [
{"geometry": agent.geometry, "unique_id": agent.unique_id}
{"geometry": agent.geometry}
for agent in self.agents
]
agents_gdf = gpd.GeoDataFrame.from_records(agents_list, index="unique_id")
agents_gdf = gpd.GeoDataFrame.from_records(agents_list)
# workaround for geometry column not being set in `from_records`
# see https://github.com/geopandas/geopandas/issues/3152
# may be removed when the issue is resolved
agents_gdf.set_geometry("geometry", inplace=True)
agents_gdf.crs = self.geo_space.crs

pd.testing.assert_frame_equal(
self.geo_space.get_agents_as_GeoDataFrame(), agents_gdf
)
self.assertEqual(
self.geo_space.get_agents_as_GeoDataFrame().crs, agents_gdf.crs
)
Expand Down
6 changes: 3 additions & 3 deletions tests/test_MapModule.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,17 @@ def setUp(self) -> None:
)
self.points = [Point(1, 1)] * 7
self.point_agents = [
self.agent_creator.create_agent(point, unique_id=uuid.uuid4().int)
self.agent_creator.create_agent(point)
for point in self.points
]
self.lines = [LineString([(1, 1), (2, 2)])] * 9
self.line_agents = [
self.agent_creator.create_agent(line, unique_id=uuid.uuid4().int)
self.agent_creator.create_agent(line)
for line in self.lines
]
self.polygons = [Polygon([(1, 1), (2, 2), (4, 4)])] * 3
self.polygon_agents = [
self.agent_creator.create_agent(polygon, unique_id=uuid.uuid4().int)
self.agent_creator.create_agent(polygon)
for polygon in self.polygons
]
self.raster_layer = mg.RasterLayer(
Expand Down

0 comments on commit 89dc6c0

Please sign in to comment.