summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLoic Bistuer <loic.bistuer@gmail.com>2014-05-19 11:14:55 +0700
committerLoic Bistuer <loic.bistuer@gmail.com>2014-05-21 10:37:41 +0700
commit0fa1aeb8d8142bd6bceb0c9a36c8e42eeca21770 (patch)
tree11d5f3674569bff8a4529a786c86dc3d73c9bf27 /tests
parent24a41ecc3590f8d92d085d4a4caa5f8bf962ceae (diff)
[1.7.x] Fixed the ordering of prefetch lookups so that latter lookups can refer to former lookups.
Thanks Anssi Kääriäinen and Tim Graham for the reviews. Refs #17001 and #22650. Backport of 870b0a1f86 from master
Diffstat (limited to 'tests')
-rw-r--r--tests/prefetch_related/tests.py9
1 files changed, 6 insertions, 3 deletions
diff --git a/tests/prefetch_related/tests.py b/tests/prefetch_related/tests.py
index 596702d694..6181adf094 100644
--- a/tests/prefetch_related/tests.py
+++ b/tests/prefetch_related/tests.py
@@ -195,7 +195,7 @@ class PrefetchRelatedTests(TestCase):
def test_reverse_one_to_one_then_m2m(self):
"""
Test that we can follow a m2m relation after going through
- the select_related reverse of a o2o.
+ the select_related reverse of an o2o.
"""
qs = Author.objects.prefetch_related('bio__books').select_related('bio')
@@ -559,13 +559,16 @@ class CustomPrefetchTests(TestCase):
inner_rooms_qs = Room.objects.filter(pk__in=[self.room1_1.pk, self.room1_2.pk])
houses_qs_prf = House.objects.prefetch_related(
Prefetch('rooms', queryset=inner_rooms_qs, to_attr='rooms_lst'))
- with self.assertNumQueries(3):
+ with self.assertNumQueries(4):
lst2 = list(Person.objects.prefetch_related(
- Prefetch('houses', queryset=houses_qs_prf.filter(pk=self.house1.pk), to_attr='houses_lst')))
+ Prefetch('houses', queryset=houses_qs_prf.filter(pk=self.house1.pk), to_attr='houses_lst'),
+ Prefetch('houses_lst__rooms_lst__main_room_of')
+ ))
self.assertEqual(len(lst2[0].houses_lst[0].rooms_lst), 2)
self.assertEqual(lst2[0].houses_lst[0].rooms_lst[0], self.room1_1)
self.assertEqual(lst2[0].houses_lst[0].rooms_lst[1], self.room1_2)
+ self.assertEqual(lst2[0].houses_lst[0].rooms_lst[0].main_room_of, self.house1)
self.assertEqual(len(lst2[1].houses_lst), 0)
# Test ReverseSingleRelatedObjectDescriptor.