diff options
| author | Tom Christie | 2013-01-03 14:05:36 -0800 | 
|---|---|---|
| committer | Tom Christie | 2013-01-03 14:05:36 -0800 | 
| commit | 6da21fa79604ffa7dc57267effa3afb59c63e62b (patch) | |
| tree | 097158438ea23789c1dbe8efed7b735fa1c26e1e /rest_framework/tests/serializer.py | |
| parent | a122856d4610492670838298e40a2081f5ef9f75 (diff) | |
| parent | 3873bc8a857829a12b2bb6a34610ab5295887660 (diff) | |
| download | django-rest-framework-6da21fa79604ffa7dc57267effa3afb59c63e62b.tar.bz2 | |
Merge pull request #541 from yprez/default_and_partial_serializers2
Fix "default" values and partial serializers.  Fixes #532.
Diffstat (limited to 'rest_framework/tests/serializer.py')
| -rw-r--r-- | rest_framework/tests/serializer.py | 16 | 
1 files changed, 15 insertions, 1 deletions
| diff --git a/rest_framework/tests/serializer.py b/rest_framework/tests/serializer.py index 701b2f47..8767385e 100644 --- a/rest_framework/tests/serializer.py +++ b/rest_framework/tests/serializer.py @@ -340,7 +340,6 @@ class ModelValidationTests(TestCase):          self.assertTrue(photo_serializer.save()) -  class RegexValidationTest(TestCase):      def test_create_failed(self):          serializer = BookSerializer(data={'isbn': '1234567890'}) @@ -551,6 +550,21 @@ class DefaultValueTests(TestCase):          self.assertEquals(instance.pk, 1)          self.assertEquals(instance.text, 'overridden') +    def test_partial_update_default(self): +        """ Regression test for issue #532 """ +        data = {'text': 'overridden'} +        serializer = self.serializer_class(data=data, partial=True) +        self.assertEquals(serializer.is_valid(), True) +        instance = serializer.save() + +        data = {'extra': 'extra_value'} +        serializer = self.serializer_class(instance=instance, data=data, partial=True) +        self.assertEquals(serializer.is_valid(), True) +        instance = serializer.save() + +        self.assertEquals(instance.extra, 'extra_value') +        self.assertEquals(instance.text, 'overridden') +  class CallableDefaultValueTests(TestCase):      def setUp(self): | 
