Replaced some GIS has_X_method skips with supports_X_aggr/has_X_function.

This commit is contained in:
Tim Graham 2017-01-03 09:49:00 -05:00 committed by GitHub
parent fdb2309604
commit c04207cd38
4 changed files with 8 additions and 4 deletions

View File

@ -82,7 +82,7 @@ class BaseSpatialFeatures(object):
'svg', 'sym_difference', 'transform', 'translate', 'union', 'unionagg',
)
# Specifies whether the Collect and Extent aggregates are supported by the database
# Is the aggregate supported by the database?
@property
def supports_collect_aggr(self):
return aggregates.Collect not in self.connection.ops.disallowed_aggregates
@ -95,6 +95,10 @@ class BaseSpatialFeatures(object):
def supports_make_line_aggr(self):
return aggregates.MakeLine not in self.connection.ops.disallowed_aggregates
@property
def supports_union_aggr(self):
return aggregates.Union not in self.connection.ops.disallowed_aggregates
def __init__(self, *args):
super(BaseSpatialFeatures, self).__init__(*args)
for method in self.geoqueryset_methods:

View File

@ -312,7 +312,7 @@ class DistanceTest(TestCase):
# instead (we should get the same results b/c accuracy variance won't matter
# in this test case).
querysets = [qs1]
if connection.features.has_distance_spheroid_method:
if connection.features.has_DistanceSpheroid_function:
gq3 = Q(point__distance_lte=(wollongong.point, d1, 'spheroid'))
gq4 = Q(point__distance_gte=(wollongong.point, d2, 'spheroid'))
qs2 = AustraliaCity.objects.exclude(name='Wollongong').filter(gq3 | gq4)

View File

@ -864,7 +864,7 @@ class GeoQuerySetTest(TestCase):
self.assertAlmostEqual(c1[0] + xfac, c2[0], 5)
self.assertAlmostEqual(c1[1] + yfac, c2[1], 5)
@skipUnlessDBFeature("has_unionagg_method")
@skipUnlessDBFeature('supports_union_aggr')
def test_unionagg(self):
"""
Testing the `Union` aggregate.

View File

@ -98,7 +98,7 @@ class RelatedGeoModelTest(TestCase):
tol
)
@skipUnlessDBFeature("has_unionagg_method")
@skipUnlessDBFeature('supports_union_aggr')
def test_related_union_aggregate(self):
"Testing the `Union` aggregate on related geographic models."
# This combines the Extent and Union aggregates into one query