From e4a2e22ddbf1b892144b35dc21404c164bc848c6 Mon Sep 17 00:00:00 2001 From: John Parton Date: Sun, 18 Aug 2024 21:52:58 -0500 Subject: Fixed #35690 -- Errored nicely when using in_bulk() with a values() or values_list() queryset. --- tests/lookup/tests.py | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'tests') diff --git a/tests/lookup/tests.py b/tests/lookup/tests.py index 28acd72874..68adbe6496 100644 --- a/tests/lookup/tests.py +++ b/tests/lookup/tests.py @@ -327,6 +327,13 @@ class LookupTests(TestCase): with self.assertRaisesMessage(TypeError, msg): Article.objects.all()[0:5].in_bulk([self.a1.id, self.a2.id]) + def test_in_bulk_not_model_iterable(self): + msg = "in_bulk() cannot be used with values() or values_list()." + with self.assertRaisesMessage(TypeError, msg): + Author.objects.values().in_bulk() + with self.assertRaisesMessage(TypeError, msg): + Author.objects.values_list().in_bulk() + def test_values(self): # values() returns a list of dictionaries instead of object instances -- # and you can specify which fields you want to retrieve. -- cgit v1.3