diff options
| author | Simon Charette <charette.s@gmail.com> | 2023-04-06 08:19:53 -0400 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2023-04-07 06:58:24 +0200 |
| commit | 511dc3db539122577aaba71f5a24d65d5adab092 (patch) | |
| tree | 9505072d9a18f09a671f8442624fc608cb00b2c6 /tests | |
| parent | 4d6a92749c3e59c6d4fbff385ff04771b9f61961 (diff) | |
[4.2.x] Fixed #34464 -- Fixed queryset aggregation over group by reference.
Regression in 59bea9efd2768102fc9d3aedda469502c218e9b7.
Refs #28477.
Thanks Ian Cubitt for the report.
Backport of 9daf8b4109c3e133eb57349bb44d73cc60c5773c from main
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/aggregation/tests.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/tests/aggregation/tests.py b/tests/aggregation/tests.py index c1ae9f0dd5..ae68c24563 100644 --- a/tests/aggregation/tests.py +++ b/tests/aggregation/tests.py @@ -36,6 +36,7 @@ from django.db.models.functions import ( Greatest, Least, Lower, + Mod, Now, Pi, TruncDate, @@ -2175,3 +2176,9 @@ class AggregateAnnotationPruningTests(TestCase): sql = ctx.captured_queries[0]["sql"].lower() self.assertEqual(sql.count("select"), 2, "Subquery wrapping required") self.assertEqual(sql.count("authors_count"), 2) + + def test_referenced_group_by_annotation_kept(self): + queryset = Book.objects.values(pages_mod=Mod("pages", 10)).annotate( + mod_count=Count("*") + ) + self.assertEqual(queryset.count(), 1) |
