diff options
| author | Yuri Prezument | 2013-08-12 21:02:59 +0300 |
|---|---|---|
| committer | Yuri Prezument | 2013-08-12 21:06:37 +0300 |
| commit | 901d2b0eb8270befa051510e190f3d5679086c7f (patch) | |
| tree | c0b7203f63dea735004a79b193a3795a950d8f1b /rest_framework/tests/test_relations_nested.py | |
| parent | abe655e061871a568cccf473414e350f3eb61d8b (diff) | |
| download | django-rest-framework-901d2b0eb8270befa051510e190f3d5679086c7f.tar.bz2 | |
Failing test case for nullifying nested object
Diffstat (limited to 'rest_framework/tests/test_relations_nested.py')
| -rw-r--r-- | rest_framework/tests/test_relations_nested.py | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/rest_framework/tests/test_relations_nested.py b/rest_framework/tests/test_relations_nested.py index 30229687..d393b0c3 100644 --- a/rest_framework/tests/test_relations_nested.py +++ b/rest_framework/tests/test_relations_nested.py @@ -180,6 +180,25 @@ class ForwardNestedOneToOneTests(TestCase): ] self.assertEqual(serializer.data, expected) + def test_one_to_one_update_to_null(self): + data = {'id': 3, 'name': 'source-3-updated', 'target': None} + instance = OneToOneSource.objects.get(pk=3) + serializer = self.Serializer(instance, data=data) + self.assertTrue(serializer.is_valid()) + obj = serializer.save() + + self.assertEqual(serializer.data, data) + self.assertEqual(obj.name, 'source-3-updated') + self.assertEqual(obj.target, None) + + queryset = OneToOneSource.objects.all() + serializer = self.Serializer(queryset, many=True) + expected = [ + {'id': 1, 'name': 'source-1', 'target': {'id': 1, 'name': 'target-1'}}, + {'id': 2, 'name': 'source-2', 'target': {'id': 2, 'name': 'target-2'}}, + {'id': 3, 'name': 'source-3-updated', 'target': None} + ] + self.assertEqual(serializer.data, expected) # TODO: Nullable 1-1 tests # def test_one_to_one_delete(self): |
