summaryrefslogtreecommitdiff
path: root/archaeological_operations/tests.py
diff options
context:
space:
mode:
authorQuentinAndre <quentin.andre@imt-atlantique.net>2021-08-19 00:46:25 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2021-11-16 17:04:41 +0100
commitb96e22202a918fefb8677543dd5150b7534bf3f9 (patch)
treea95e79d0e70f44a1caf6f27eaad84f464b032cfb /archaeological_operations/tests.py
parente7a44c96740194e443bf3f8cca98bfb1d03e012e (diff)
downloadIshtar-b96e22202a918fefb8677543dd5150b7534bf3f9.tar.bz2
Ishtar-b96e22202a918fefb8677543dd5150b7534bf3f9.zip
create_cr_with_bfs returns pks
Diffstat (limited to 'archaeological_operations/tests.py')
-rw-r--r--archaeological_operations/tests.py73
1 files changed, 72 insertions, 1 deletions
diff --git a/archaeological_operations/tests.py b/archaeological_operations/tests.py
index a5f1de328..ca0cce5da 100644
--- a/archaeological_operations/tests.py
+++ b/archaeological_operations/tests.py
@@ -4340,7 +4340,7 @@ class SeleniumTestsOperations(SeleniumTests):
self.assertMap(dic_base)
def test_geo_items(self):
- geo_elements = self.setUpDefaultGeoItems()
+ geo_elements, ope_pks = self.setUpDefaultGeoItems()
poly_ope, centr_ope, pt_ope = geo_elements[0]
dic_poly = {
@@ -4370,3 +4370,74 @@ class SeleniumTestsOperations(SeleniumTests):
dropdown.click()
self.selenium.find_element_by_xpath('//div[@class="dropdown-menu show"]/a[@href="/operation_search/"]').click()
self._test_operation(2, dic_pt, geo_elements[1], geo_elements[2]) # point based operation
+
+ def assertPt(self, item, geom):
+ #self.assertEqual(item.multi_polygon.coords, geom[0].coords)
+ #self.assertEqual(item.point_2d.coords, geom[2].coords)
+ print(item, " multi_poly:")
+ print(item.multi_polygon.coords)
+ print("geom:")
+ print(geom[0].coords)
+ print('result: ', item.multi_polygon.coords == geom[0].coords)
+ print("point_2d:")
+ print((round(item.x, 5), round(item.y, 5)))
+ print("geom:")
+ print(geom[2].coords)
+ print('result: ', (round(item.x, 5), round(item.y, 5)) == geom[2].coords)
+ print('\n')
+
+ def assertPoly(self, item, geom, real_point=None):
+ #self.assertEqual(item.multi_polygon.coords, geom[0].coords)
+ #if real_point:
+ # self.assertEqual((round(item.x, 5), round(item.y, 5)), geom[1].coords)
+ # else:
+ # self.assertEqual((round(item.x, 5), round(item.y, 5)), real_point.coords)
+ print(item, " multi_poly:")
+ print(item.multi_polygon.coords)
+ print("geom:")
+ print(geom[0].coords)
+ print('result: ', item.multi_polygon.coords==geom[0].coords)
+ print("point_2d:")
+ print((round(item.x, 5), round(item.y, 5)))
+ print("geom:")
+ point = geom[1].coords
+ if real_point:
+ point = real_point.coords
+ print(point)
+ print('result: ', (round(item.x, 5), round(item.y, 5)) == point)
+ print('\n')
+
+ def test_setUpDefaultItems(self):
+ from django.contrib.gis.geos import GEOSGeometry
+ from archaeological_operations.models import Operation
+ base_geoms, ope_pks = self.setUpDefaultGeoItems()
+ geoms = []
+ for geom in base_geoms:
+ poly = GEOSGeometry(json.dumps({'type': 'MultiPolygon', 'coordinates': geom[0]}))
+ centr = GEOSGeometry(json.dumps({'type': 'Point', 'coordinates': geom[1]}))
+ pt = GEOSGeometry(json.dumps({'type': 'Point', 'coordinates': geom[2]}))
+ geoms.append([poly, centr, pt])
+ ope_pt = Operation.objects.get(pk=ope_pks[0])
+ self.assertPt(ope_pt, geoms[0])
+ ope_poly = Operation.objects.get(pk=ope_pks[1])
+ self.assertPoly(ope_poly, geoms[0])
+
+ cr_poly_poly = ope_poly.context_record.all()[0]
+ self.assertPoly(cr_poly_poly, geoms[1])
+ cr_poly_pt = ope_poly.context_record.all()[1]
+ self.assertPt(cr_poly_pt, geoms[1])
+ cr_pt_poly = ope_pt.context_record.all()[0]
+ self.assertPoly(cr_pt_poly, geoms[1], geoms[0][2])
+ cr_pt_pt = ope_pt.context_record.all()[1]
+ self.assertPt(cr_pt_pt, geoms[1])
+
+ self.assertPt(cr_pt_pt.base_finds.all()[0], geoms[2])
+ self.assertPoly(cr_pt_pt.base_finds.all()[1], geoms[2], geoms[1][2])
+ self.assertPt(cr_poly_pt.base_finds.all()[0], geoms[2])
+ self.assertPoly(cr_poly_pt.base_finds.all()[1], geoms[2], geoms[1][2])
+ self.assertPt(cr_pt_poly.base_finds.all()[0], geoms[2])
+ self.assertPoly(cr_pt_poly.base_finds.all()[1], geoms[2], geoms[0][2])
+ self.assertPt(cr_poly_poly.base_finds.all()[0], geoms[2])
+ self.assertPoly(cr_poly_poly.base_finds.all()[1], geoms[2])
+
+