From a49be25e6128a3272960ed4f6f6506d147596395 Mon Sep 17 00:00:00 2001 From: Tim Graham Date: Sat, 25 Apr 2026 07:07:01 -0400 Subject: Moved QuerySet.extra() assertions to a separate test. This allows backends that don't support extra() to skip it. --- tests/queries/tests.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/tests/queries/tests.py b/tests/queries/tests.py index c00a78e2ed..a9f10de7b3 100644 --- a/tests/queries/tests.py +++ b/tests/queries/tests.py @@ -897,14 +897,19 @@ class Queries1Tests(TestCase): self.assertSequenceEqual(q.annotate(Count("food")), []) self.assertSequenceEqual(q.order_by("meal", "food"), []) self.assertSequenceEqual(q.distinct(), []) - self.assertSequenceEqual(q.extra(select={"foo": "1"}), []) self.assertSequenceEqual(q.reverse(), []) + self.assertSequenceEqual(q.defer("meal"), []) + self.assertSequenceEqual(q.only("meal"), []) + + def test_ticket7235_extra(self): + Eaten.objects.create(meal="m") + q = Eaten.objects.none() + with self.assertNumQueries(0): + self.assertSequenceEqual(q.extra(select={"foo": "1"}), []) q.query.low_mark = 1 msg = "Cannot change a query once a slice has been taken." with self.assertRaisesMessage(TypeError, msg): q.extra(select={"foo": "1"}) - self.assertSequenceEqual(q.defer("meal"), []) - self.assertSequenceEqual(q.only("meal"), []) def test_ticket7791(self): # There were "issues" when ordering and distinct-ing on fields related -- cgit v1.3