summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAman Pandey <aman2001mi@gmail.com>2023-11-27 23:21:33 +0530
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2023-11-28 05:46:04 +0100
commit0fcd72bc48eade21ce9202d7a71692f9b5a42bd2 (patch)
tree2a8854578e820198143d9ad4d8c60947f06551c6 /tests
parent729266c6f29c7a0677b24926a86a767ef3078b26 (diff)
Fixed #34633 -- Made create() method of reverse many-to-one managers clear prefetch_related() cache.
Diffstat (limited to 'tests')
-rw-r--r--tests/many_to_one/tests.py8
1 files changed, 8 insertions, 0 deletions
diff --git a/tests/many_to_one/tests.py b/tests/many_to_one/tests.py
index b07972ec31..ac5b35e055 100644
--- a/tests/many_to_one/tests.py
+++ b/tests/many_to_one/tests.py
@@ -800,6 +800,14 @@ class ManyToOneTests(TestCase):
# refs #21563
self.assertFalse(hasattr(Article(), "reporter"))
+ def test_create_after_prefetch(self):
+ c = City.objects.create(name="Musical City")
+ d1 = District.objects.create(name="Ladida", city=c)
+ city = City.objects.prefetch_related("districts").get(id=c.id)
+ self.assertSequenceEqual(city.districts.all(), [d1])
+ d2 = city.districts.create(name="Goa")
+ self.assertSequenceEqual(city.districts.all(), [d1, d2])
+
def test_clear_after_prefetch(self):
c = City.objects.create(name="Musical City")
d = District.objects.create(name="Ladida", city=c)