summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2020-09-14 01:58:05 -0400
committerGitHub <noreply@github.com>2020-09-14 07:58:05 +0200
commit71ae1ab0123582cc5bfe0f7d5f4cc19a9412f396 (patch)
tree87442b64d154c1a3caf78ad00ce059cd987dee65
parenta7a4ff10260cc507bb9b79527fb9c7b87b68575c (diff)
Removed hardcoded paths to SpatialRefSys models in tests.
-rw-r--r--tests/gis_tests/test_spatialrefsys.py22
-rw-r--r--tests/gis_tests/utils.py15
2 files changed, 14 insertions, 23 deletions
diff --git a/tests/gis_tests/test_spatialrefsys.py b/tests/gis_tests/test_spatialrefsys.py
index e4638baa31..bd24aaed00 100644
--- a/tests/gis_tests/test_spatialrefsys.py
+++ b/tests/gis_tests/test_spatialrefsys.py
@@ -1,8 +1,10 @@
import re
+from django.db import connection
from django.test import TestCase, skipUnlessDBFeature
+from django.utils.functional import cached_property
-from .utils import SpatialRefSys, oracle, postgis, spatialite
+from .utils import oracle, postgis, spatialite
test_srs = ({
'srid': 4326,
@@ -51,9 +53,13 @@ test_srs = ({
@skipUnlessDBFeature("has_spatialrefsys_table")
class SpatialRefSysTest(TestCase):
+ @cached_property
+ def SpatialRefSys(self):
+ return connection.ops.connection.ops.spatial_ref_sys()
+
def test_get_units(self):
epsg_4326 = next(f for f in test_srs if f['srid'] == 4326)
- unit, unit_name = SpatialRefSys().get_units(epsg_4326['wkt'])
+ unit, unit_name = self.SpatialRefSys().get_units(epsg_4326['wkt'])
self.assertEqual(unit_name, 'degree')
self.assertAlmostEqual(unit, 0.01745329251994328)
@@ -62,7 +68,7 @@ class SpatialRefSysTest(TestCase):
Test retrieval of SpatialRefSys model objects.
"""
for sd in test_srs:
- srs = SpatialRefSys.objects.get(srid=sd['srid'])
+ srs = self.SpatialRefSys.objects.get(srid=sd['srid'])
self.assertEqual(sd['srid'], srs.srid)
# Some of the authority names are borked on Oracle, e.g., SRID=32140.
@@ -84,7 +90,7 @@ class SpatialRefSysTest(TestCase):
Test getting OSR objects from SpatialRefSys model objects.
"""
for sd in test_srs:
- sr = SpatialRefSys.objects.get(srid=sd['srid'])
+ sr = self.SpatialRefSys.objects.get(srid=sd['srid'])
self.assertTrue(sr.spheroid.startswith(sd['spheroid']))
self.assertEqual(sd['geographic'], sr.geographic)
self.assertEqual(sd['projected'], sr.projected)
@@ -110,7 +116,7 @@ class SpatialRefSysTest(TestCase):
prec = sd['eprec']
# Getting our spatial reference and its ellipsoid
- srs = SpatialRefSys.objects.get(srid=sd['srid'])
+ srs = self.SpatialRefSys.objects.get(srid=sd['srid'])
ellps2 = srs.ellipsoid
for i in range(3):
@@ -126,9 +132,9 @@ class SpatialRefSysTest(TestCase):
add_srs_entry(3857)
self.assertTrue(
- SpatialRefSys.objects.filter(srid=3857).exists()
+ self.SpatialRefSys.objects.filter(srid=3857).exists()
)
- srs = SpatialRefSys.objects.get(srid=3857)
+ srs = self.SpatialRefSys.objects.get(srid=3857)
self.assertTrue(
- SpatialRefSys.get_spheroid(srs.wkt).startswith('SPHEROID[')
+ self.SpatialRefSys.get_spheroid(srs.wkt).startswith('SPHEROID[')
)
diff --git a/tests/gis_tests/utils.py b/tests/gis_tests/utils.py
index 857a608f48..7eb61701f8 100644
--- a/tests/gis_tests/utils.py
+++ b/tests/gis_tests/utils.py
@@ -52,21 +52,6 @@ spatialite = _default_db == 'spatialite'
# MySQL spatial indices can't handle NULL geometries.
gisfield_may_be_null = not mysql
-if oracle and 'gis' in settings.DATABASES[DEFAULT_DB_ALIAS]['ENGINE']:
- from django.contrib.gis.db.backends.oracle.models import (
- OracleSpatialRefSys as SpatialRefSys,
- )
-elif postgis:
- from django.contrib.gis.db.backends.postgis.models import (
- PostGISSpatialRefSys as SpatialRefSys,
- )
-elif spatialite:
- from django.contrib.gis.db.backends.spatialite.models import (
- SpatialiteSpatialRefSys as SpatialRefSys,
- )
-else:
- SpatialRefSys = None
-
class FuncTestMixin:
"""Assert that Func expressions aren't mutated during their as_sql()."""