summaryrefslogtreecommitdiff
path: root/tests/one_to_one
diff options
context:
space:
mode:
authorTim Graham <timograham@gmail.com>2015-10-08 18:48:57 -0400
committerTim Graham <timograham@gmail.com>2015-10-09 10:20:53 -0400
commit384ddbec1b73a4636f234da3894fde8f8420bb63 (patch)
tree75df0a0c68d0571fdcfdb20f608f050579bc3c52 /tests/one_to_one
parent5d8985005edd1f308e64b38741ff09a95bea7846 (diff)
downloaddjango-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.py16
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) """