def test_geometry_update_optimization_4326(self): lat = 46.0 geom1 = 'SRID=4326;POINT(' + str(lat) + ' 6.0)' waypoint_db = Waypoint( document_id=1, waypoint_type='summit', elevation=2203, geometry=DocumentGeometry( document_id=1, geom=geom1 ) ) waypoint_in = Waypoint( document_id=1, waypoint_type='summit', elevation=1234, geometry=DocumentGeometry( geom='SRID=4326;POINT(' + str(lat + 10**(-8)) + ' 6.0)') ) waypoint_db.update(waypoint_in) self.assertEqual(waypoint_db.geometry.geom, geom1) waypoint_in = Waypoint( document_id=1, waypoint_type='summit', elevation=1234, geometry=DocumentGeometry( geom='SRID=4326;POINT(' + str(lat + 10**(-7)) + ' 6.0)') ) waypoint_db.update(waypoint_in) self.assertNotEqual(waypoint_db.geometry.geom, geom1)
def test_geometry_update_skip_optimization(self): geom1 = "SRID=3857;POINT(445278.0 334111.0)" waypoint_db = Waypoint( document_id=1, waypoint_type="summit", elevation=2203, geometry=DocumentGeometry(document_id=1, geom=geom1) ) waypoint_in = Waypoint(document_id=1, waypoint_type="summit", elevation=1234, geometry=None) waypoint_db.update(waypoint_in) self.assertEqual(waypoint_db.geometry.geom, geom1)
def test_geometry_update_skip_optimization(self): geom1 = 'SRID=3857;POINT(445278.0 334111.0)' waypoint_db = Waypoint( document_id=1, waypoint_type='summit', elevation=2203, geometry=DocumentGeometry( document_id=1, geom=geom1 ) ) waypoint_in = Waypoint( document_id=1, waypoint_type='summit', elevation=1234, geometry=None ) waypoint_db.update(waypoint_in) self.assertEqual(waypoint_db.geometry.geom, geom1)
def test_update(self): waypoint_db = Waypoint(document_id=1, waypoint_type='summit', elevation=2203, version=123, locales=[ WaypointLocale(id=2, culture='en', title='A', description='abc', version=345), WaypointLocale(id=3, culture='fr', title='B', description='bcd', version=678), ], geometry=DocumentGeometry( id=4, geom='SRID=3857;POINT(1 2)')) waypoint_in = Waypoint( document_id=1, waypoint_type='summit', elevation=1234, version=123, locales=[ WaypointLocale(id=2, culture='en', title='C', description='abc', version=345), WaypointLocale(culture='es', title='D', description='efg'), ], geometry=DocumentGeometry(geom='SRID=3857;POINT(3 4)')) waypoint_db.update(waypoint_in) self.assertEqual(waypoint_db.elevation, waypoint_in.elevation) self.assertEqual(len(waypoint_db.locales), 3) locale_en = waypoint_db.get_locale('en') locale_fr = waypoint_db.get_locale('fr') locale_es = waypoint_db.get_locale('es') self.assertEqual(locale_en.title, 'C') self.assertEqual(locale_fr.title, 'B') self.assertEqual(locale_es.title, 'D') self.assertEqual(waypoint_db.geometry.geom, 'SRID=3857;POINT(3 4)')
def test_update(self): waypoint_db = Waypoint( document_id=1, waypoint_type='summit', elevation=2203, version=123, locales=[ WaypointLocale( id=2, culture='en', title='A', description='abc', version=345), WaypointLocale( id=3, culture='fr', title='B', description='bcd', version=678), ], geometry=DocumentGeometry( document_id=1, geom='SRID=3857;POINT(1 2)' ) ) waypoint_in = Waypoint( document_id=1, waypoint_type='summit', elevation=1234, version=123, locales=[ WaypointLocale( id=2, culture='en', title='C', description='abc', version=345), WaypointLocale( culture='es', title='D', description='efg'), ], geometry=DocumentGeometry(geom='SRID=3857;POINT(3 4)') ) waypoint_db.update(waypoint_in) self.assertEqual(waypoint_db.elevation, waypoint_in.elevation) self.assertEqual(len(waypoint_db.locales), 3) locale_en = waypoint_db.get_locale('en') locale_fr = waypoint_db.get_locale('fr') locale_es = waypoint_db.get_locale('es') self.assertEqual(locale_en.title, 'C') self.assertEqual(locale_fr.title, 'B') self.assertEqual(locale_es.title, 'D') self.assertEqual(waypoint_db.geometry.geom, 'SRID=3857;POINT(3 4)')
def test_geometry_update_optimization_3857(self): geom1 = "SRID=3857;POINT(445278.0 1.0)" waypoint_db = Waypoint( document_id=1, waypoint_type="summit", elevation=2203, geometry=DocumentGeometry(document_id=1, geom=geom1) ) waypoint_in = Waypoint( document_id=1, waypoint_type="summit", elevation=1234, geometry=DocumentGeometry(geom="SRID=3857;POINT(445278.5 1.0)"), ) waypoint_db.update(waypoint_in) self.assertEqual(waypoint_db.geometry.geom, geom1) waypoint_in = Waypoint( document_id=1, waypoint_type="summit", elevation=14, geometry=DocumentGeometry(geom="SRID=3857;POINT(445279.0 1.0)"), ) waypoint_db.update(waypoint_in) self.assertNotEqual(waypoint_db.geometry.geom, geom1)
def test_update(self): waypoint_db = Waypoint( document_id=1, waypoint_type="summit", elevation=2203, version=123, locales=[ WaypointLocale(id=2, lang="en", title="A", description="abc", version=345), WaypointLocale(id=3, lang="fr", title="B", description="bcd", version=678), ], geometry=DocumentGeometry(document_id=1, geom="SRID=3857;POINT(1 2)"), ) waypoint_in = Waypoint( document_id=1, waypoint_type="summit", elevation=1234, version=123, locales=[ WaypointLocale(id=2, lang="en", title="C", description="abc", version=345), WaypointLocale(lang="es", title="D", description="efg"), ], geometry=DocumentGeometry(geom="SRID=3857;POINT(3 4)"), ) waypoint_db.update(waypoint_in) self.assertEqual(waypoint_db.elevation, waypoint_in.elevation) self.assertEqual(len(waypoint_db.locales), 3) locale_en = waypoint_db.get_locale("en") locale_fr = waypoint_db.get_locale("fr") locale_es = waypoint_db.get_locale("es") self.assertEqual(locale_en.title, "C") self.assertEqual(locale_fr.title, "B") self.assertEqual(locale_es.title, "D") self.assertEqual(waypoint_db.geometry.geom, "SRID=3857;POINT(3 4)")
def test_geometry_update_optimization_3857(self): geom1 = 'SRID=3857;POINT(445278.0 1.0)' waypoint_db = Waypoint( document_id=1, waypoint_type='summit', elevation=2203, geometry=DocumentGeometry( document_id=1, geom=geom1 ) ) waypoint_in = Waypoint( document_id=1, waypoint_type='summit', elevation=1234, geometry=DocumentGeometry( geom='SRID=3857;POINT(445278.5 1.0)') ) waypoint_db.update(waypoint_in) self.assertEqual(waypoint_db.geometry.geom, geom1) waypoint_in = Waypoint( document_id=1, waypoint_type='summit', elevation=14, geometry=DocumentGeometry( geom='SRID=3857;POINT(445279.0 1.0)') ) waypoint_db.update(waypoint_in) self.assertNotEqual(waypoint_db.geometry.geom, geom1)