summaryrefslogtreecommitdiff
path: root/tests/annotations
diff options
context:
space:
mode:
Diffstat (limited to 'tests/annotations')
-rw-r--r--tests/annotations/tests.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/annotations/tests.py b/tests/annotations/tests.py
index aaf56e79ef..d2e2214db8 100644
--- a/tests/annotations/tests.py
+++ b/tests/annotations/tests.py
@@ -244,6 +244,20 @@ class NonAggregateAnnotationTestCase(TestCase):
sum_rating=Sum('rating')
).filter(sum_rating=F('nope')))
+ def test_decimal_annotation(self):
+ salary = Decimal(10) ** -Employee._meta.get_field('salary').decimal_places
+ Employee.objects.create(
+ first_name='Max',
+ last_name='Paine',
+ store=Store.objects.first(),
+ age=23,
+ salary=salary,
+ )
+ self.assertEqual(
+ Employee.objects.annotate(new_salary=F('salary') / 10).get().new_salary,
+ salary / 10,
+ )
+
def test_filter_decimal_annotation(self):
qs = Book.objects.annotate(new_price=F('price') + 1).filter(new_price=Decimal(31)).values_list('new_price')
self.assertEqual(qs.get(), (Decimal(31),))