diff options
author | Tim Graham <timograham@gmail.com> | 2015-10-08 18:48:57 -0400 |
---|---|---|
committer | Tim Graham <timograham@gmail.com> | 2015-10-09 10:20:53 -0400 |
commit | 384ddbec1b73a4636f234da3894fde8f8420bb63 (patch) | |
tree | 75df0a0c68d0571fdcfdb20f608f050579bc3c52 /tests/one_to_one | |
parent | 5d8985005edd1f308e64b38741ff09a95bea7846 (diff) | |
download | django-384ddbec1b73a4636f234da3894fde8f8420bb63.tar.gz |
Fixed #14368 -- Allowed setting a reverse OneToOne relation to None.
Diffstat (limited to 'tests/one_to_one')
-rw-r--r-- | tests/one_to_one/tests.py | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/one_to_one/tests.py b/tests/one_to_one/tests.py index 25d20dc2c9..ee5d7415e3 100644 --- a/tests/one_to_one/tests.py +++ b/tests/one_to_one/tests.py @@ -186,6 +186,22 @@ class OneToOneTests(TestCase): self.assertEqual(self.p1.restaurant, self.r1) self.assertEqual(self.p1.bar, self.b1) + def test_assign_none_reverse_relation(self): + p = Place.objects.get(name="Demon Dogs") + # Assigning None succeeds if field is null=True. + ug_bar = UndergroundBar.objects.create(place=p, serves_cocktails=False) + p.undergroundbar = None + self.assertIsNone(ug_bar.place) + ug_bar.save() + ug_bar.refresh_from_db() + self.assertIsNone(ug_bar.place) + + def test_assign_none_null_reverse_relation(self): + p = Place.objects.get(name="Demon Dogs") + # Assigning None doesn't throw AttributeError if there isn't a related + # UndergroundBar. + p.undergroundbar = None + def test_related_object_cache(self): """ Regression test for #6886 (the related-object cache) """ |