summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey Fedoseev <fedoseev.sergey@gmail.com>2017-10-29 23:25:57 +0500
committerTim Graham <timograham@gmail.com>2017-11-04 10:56:34 -0400
commit9e12e02afdadcea438f6f706e4fbae5dc659ac3a (patch)
tree3fca677ab06e960d2eea74ec4b9a1be15510d7a1
parent05232cda2fd4cd0209b51ee4573aac1e84ac4def (diff)
[2.0.x] Refs #17448 -- Fixed GeoModelTest.test_raw_sql_query.
The test was a false positive. Backport of 69922d303dbe8e83952f769caff205abbe100bba from master
-rw-r--r--tests/gis_tests/geoapp/tests.py15
1 files changed, 7 insertions, 8 deletions
diff --git a/tests/gis_tests/geoapp/tests.py b/tests/gis_tests/geoapp/tests.py
index f9838b461b..5170e31157 100644
--- a/tests/gis_tests/geoapp/tests.py
+++ b/tests/gis_tests/geoapp/tests.py
@@ -171,14 +171,13 @@ class GeoModelTest(TestCase):
def test_raw_sql_query(self):
"Testing raw SQL query."
cities1 = City.objects.all()
- # Only PostGIS would support a 'select *' query because of its recognized
- # HEXEWKB format for geometry fields
- as_text = 'ST_AsText(%s)' if postgis else connection.ops.select
- cities2 = City.objects.raw(
- 'select id, name, %s from geoapp_city' % as_text % 'point'
- )
- self.assertEqual(len(cities1), len(list(cities2)))
- self.assertIsInstance(cities2[0].point, Point)
+ point_select = connection.ops.select % 'point'
+ cities2 = list(City.objects.raw(
+ 'select id, name, %s as point from geoapp_city' % point_select
+ ))
+ self.assertEqual(len(cities1), len(cities2))
+ with self.assertNumQueries(0): # Ensure point isn't deferred.
+ self.assertIsInstance(cities2[0].point, Point)
def test_dumpdata_loaddata_cycle(self):
"""