summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/custom_lookups/tests.py15
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/custom_lookups/tests.py b/tests/custom_lookups/tests.py
index 1b069047e4..dd8d431d3d 100644
--- a/tests/custom_lookups/tests.py
+++ b/tests/custom_lookups/tests.py
@@ -559,3 +559,18 @@ class CustomisedMethodsTests(TestCase):
def test_overridden_get_transform_chain(self):
q = CustomModel.objects.filter(field__transformfunc_banana__transformfunc_pear=3)
self.assertIn('pear()', str(q.query))
+
+
+class SubqueryTransformTests(TestCase):
+ def test_subquery_usage(self):
+ models.IntegerField.register_lookup(Div3Transform)
+ try:
+ Author.objects.create(name='a1', age=1)
+ a2 = Author.objects.create(name='a2', age=2)
+ Author.objects.create(name='a3', age=3)
+ Author.objects.create(name='a4', age=4)
+ self.assertQuerysetEqual(
+ Author.objects.order_by('name').filter(id__in=Author.objects.filter(age__div3=2)),
+ [a2], lambda x: x)
+ finally:
+ models.IntegerField._unregister_lookup(Div3Transform)