summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/aggregation_regress/tests.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/aggregation_regress/tests.py b/tests/aggregation_regress/tests.py
index cb469363a0..1e680dbdd9 100644
--- a/tests/aggregation_regress/tests.py
+++ b/tests/aggregation_regress/tests.py
@@ -349,6 +349,20 @@ class AggregationTests(TestCase):
{'c__max': 3}
)
+ def test_decimal_aggregate_annotation_filter(self):
+ """
+ Filtering on an aggregate annotation with Decimal values should work.
+ Requires special handling on SQLite (#18247).
+ """
+ self.assertEqual(
+ len(Author.objects.annotate(sum=Sum('book_contact_set__price')).filter(sum__gt=Decimal(40))),
+ 1
+ )
+ self.assertEqual(
+ len(Author.objects.annotate(sum=Sum('book_contact_set__price')).filter(sum__lte=Decimal(40))),
+ 4
+ )
+
def test_field_error(self):
# Bad field requests in aggregates are caught and reported
self.assertRaises(