summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorSimon Charette <charette.s@gmail.com>2025-02-09 21:42:06 -0500
committerSarah Boyce <42296566+sarahboyce@users.noreply.github.com>2025-02-13 09:29:24 +0100
commit8561100425876bde3be4b2a22324655f74ff9609 (patch)
treebcdced631d2bee3948543d4e9344fad7a1d6c223 /tests
parent47c837a1ff96ef1b10b44477a7a9f72283d12e83 (diff)
Fixed #36181 -- Allowed Subquery usage in __in lookups against composite pks.
Thanks Jacob Walls for the report.
Diffstat (limited to 'tests')
-rw-r--r--tests/composite_pk/test_filter.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/tests/composite_pk/test_filter.py b/tests/composite_pk/test_filter.py
index d4c6ef13e0..c633348cc1 100644
--- a/tests/composite_pk/test_filter.py
+++ b/tests/composite_pk/test_filter.py
@@ -442,6 +442,11 @@ class CompositePKFilterTests(TestCase):
with self.assertRaisesMessage(ValueError, msg):
Comment.objects.filter(text__gt=Cast(F("pk"), TextField())).count()
+ def test_explicit_subquery(self):
+ subquery = Subquery(User.objects.values("pk"))
+ self.assertEqual(User.objects.filter(pk__in=subquery).count(), 4)
+ self.assertEqual(Comment.objects.filter(user__in=subquery).count(), 5)
+
def test_filter_case_when(self):
msg = "When expression does not support composite primary keys."
with self.assertRaisesMessage(ValueError, msg):