From 625c591122f99cb17c03bd3c7034c68b4cf4f1fc Mon Sep 17 00:00:00 2001 From: mpeltriaux Date: Thu, 25 Jun 2026 08:55:50 +0200 Subject: [PATCH] # Tests * updates tests * enhances workflow of geometry conflict fetching --- konova/models/geometry.py | 7 +++---- konova/tests/test_geometries.py | 21 ++++++--------------- 2 files changed, 9 insertions(+), 19 deletions(-) diff --git a/konova/models/geometry.py b/konova/models/geometry.py index f5955b93..663d5413 100644 --- a/konova/models/geometry.py +++ b/konova/models/geometry.py @@ -113,7 +113,7 @@ class Geometry(BaseResource): objs (list): The list of objects """ objs = [] - + stop_searching = False # Some related data sets can be processed rather easily regular_sets = [ self.intervention_set, @@ -129,12 +129,11 @@ class Geometry(BaseResource): else: objs += set_objs - stop_searching = objs is not None + stop_searching = len(objs) > 0 if stop_searching: break - search_for_comps = not objs - if search_for_comps: + if not stop_searching: # ... but we need a special treatment for compensations, since they can be deleted directly OR inherit their # de-facto-deleted status from their deleted parent intervention comp_objs = self.compensation_set.filter( diff --git a/konova/tests/test_geometries.py b/konova/tests/test_geometries.py index 7850ac7d..017e184e 100644 --- a/konova/tests/test_geometries.py +++ b/konova/tests/test_geometries.py @@ -85,12 +85,6 @@ class GeometryTestCase(BaseTestCase): ) def test_get_data_objects(self): - num_objs_with_geom = 0 - self.assertEqual( - len(self.geom_1.get_data_objects()), - num_objs_with_geom - ) - objs = [ self.intervention, self.compensation, @@ -98,16 +92,13 @@ class GeometryTestCase(BaseTestCase): self.ema, ] for obj in objs: - obj.geometry = self.geom_1 - obj.save() + if not obj.geometry: + obj.geometry = Geometry.objects.create(geom=self.create_dummy_geometry()) + obj.save() - num_objs_with_geom += 1 - geom_objs = self.geom_1.get_data_objects() - self.assertEqual( - len(geom_objs), - num_objs_with_geom - ) - self.assertIn(obj, geom_objs) + data_objs = obj.geometry.get_data_objects() + self.assertEqual(len(data_objs), 1) + self.assertIn(obj, data_objs) def test_as_feature_collection(self): geometry = self.geom_1.geom