diff options
Diffstat (limited to 'tests/one_to_one/tests.py')
| -rw-r--r-- | tests/one_to_one/tests.py | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/tests/one_to_one/tests.py b/tests/one_to_one/tests.py index 314c56a60f..a3c84a9980 100644 --- a/tests/one_to_one/tests.py +++ b/tests/one_to_one/tests.py @@ -507,3 +507,13 @@ class OneToOneTests(TestCase): pointer = ToFieldPointer.objects.create(target=target) self.assertSequenceEqual(ToFieldPointer.objects.filter(target=target), [pointer]) self.assertSequenceEqual(ToFieldPointer.objects.filter(pk__exact=pointer), [pointer]) + + def test_cached_relation_invalidated_on_save(self): + """ + Model.save() invalidates stale OneToOneField relations after a primary + key assignment. + """ + self.assertEqual(self.b1.place, self.p1) # caches b1.place + self.b1.place_id = self.p2.pk + self.b1.save() + self.assertEqual(self.b1.place, self.p2) |
