summaryrefslogtreecommitdiff
path: root/tests/prefetch_related/tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/prefetch_related/tests.py')
-rw-r--r--tests/prefetch_related/tests.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/prefetch_related/tests.py b/tests/prefetch_related/tests.py
index 856f766d30..99e3cd6b80 100644
--- a/tests/prefetch_related/tests.py
+++ b/tests/prefetch_related/tests.py
@@ -1257,6 +1257,20 @@ class GenericRelationTests(TestCase):
],
)
+ def test_reverse_generic_relation(self):
+ # Create two distinct bookmarks to ensure the bookmark and
+ # tagged item models primary are offset.
+ first_bookmark = Bookmark.objects.create()
+ second_bookmark = Bookmark.objects.create()
+ TaggedItem.objects.create(
+ content_object=first_bookmark, favorite=second_bookmark
+ )
+ with self.assertNumQueries(2):
+ obj = TaggedItem.objects.prefetch_related("favorite_bookmarks").get()
+ with self.assertNumQueries(0):
+ prefetched_bookmarks = obj.favorite_bookmarks.all()
+ self.assertQuerySetEqual(prefetched_bookmarks, [second_bookmark])
+
class MultiTableInheritanceTest(TestCase):
@classmethod