Commit 59d369db authored by Tim Graham's avatar Tim Graham
Browse files

[1.6.x] Skipped some broken tests on Oracle GIS; refs #23504.

Backport of 7fce7f51 from master
parent a6c294a5
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -6,7 +6,7 @@ from datetime import datetime
from django.contrib.gis.geos import HAS_GEOS
from django.contrib.gis.tests.utils import no_mysql, no_spatialite
from django.contrib.gis.shortcuts import render_to_kmz
from django.contrib.gis.tests.utils import HAS_SPATIAL_DB
from django.contrib.gis.tests.utils import HAS_SPATIAL_DB, no_oracle
from django.db.models import Count, Min
from django.test import TestCase
from django.utils.unittest import skipUnless
@@ -67,6 +67,10 @@ class GeoRegressionTests(TestCase):
         # .count() should not throw TypeError in __eq__
         self.assertEqual(cities_within_state.count(), 1)

    # TODO: fix on Oracle -- get the following error because the SQL is ordered
    # by a geometry object, which Oracle apparently doesn't like:
    #  ORA-22901: cannot compare nested table or VARRAY or LOB attributes of an object type
    @no_oracle
    def test_defer_or_only_with_annotate(self):
        "Regression for #16409. Make sure defer() and only() work with annotate()"
        self.assertIsInstance(list(City.objects.annotate(Count('point')).defer('name')), list)
+4 −0
Original line number Diff line number Diff line
@@ -251,6 +251,10 @@ class RelatedGeoModelTest(TestCase):
        self.assertEqual(1, len(vqs))
        self.assertEqual(3, vqs[0]['num_books'])

    # TODO: fix on Oracle -- get the following error because the SQL is ordered
    # by a geometry object, which Oracle apparently doesn't like:
    #  ORA-22901: cannot compare nested table or VARRAY or LOB attributes of an object type
    @no_oracle
    def test13c_count(self):
        "Testing `Count` aggregate with `.values()`.  See #15305."
        qs = Location.objects.filter(id=5).annotate(num_cities=Count('city')).values('id', 'point', 'num_cities')