Update test_serializer.py

This commit is contained in:
Nathan Hubbell 2014-09-04 12:01:06 -07:00
parent ac9195b0b5
commit c529d017ef

View File

@ -11,7 +11,7 @@ from tests.models import (
HasPositiveIntegerAsChoice, Album, ActionItem, Anchor, BasicModel,
BlankFieldModel, BlogPost, BlogPostComment, Book, CallableDefaultValueModel,
DefaultValueModel, ManyToManyModel, Person, ReadOnlyManyToManyModel, Photo,
RESTFrameworkModel, ForeignKeySource
RESTFrameworkModel, ForeignKeySource, PartialUpdateModel
)
from tests.models import BasicModelSerializer
import datetime
@ -192,6 +192,12 @@ class HyperlinkedForeignKeySourceSerializer(serializers.HyperlinkedModelSerializ
model = ForeignKeySource
class PartialUpdateSerializer(serializers.ModelSerializer):
class Meta:
model = PartialUpdateModel
fields = ['text', 'extra', 'textra', 'text_extra']
class BasicTests(TestCase):
def setUp(self):
self.comment = Comment(
@ -349,6 +355,13 @@ class BasicTests(TestCase):
exclusions = serializer.get_validation_exclusions()
self.assertTrue('title' in exclusions, '`title` field was marked `required=False` and should be excluded')
def test_partial_update(self):
serializer = PartialUpdateSerializer(data={'text': 'blah', 'extra': 'blah blah', 'textra': 'blargh',
'text_extra': 'blarghal'})
serializer.save()
entry = PartialUpdateModel.objects.get(text='blah')
second_serializer = PartialUpdateSerializer(entry, data={'textra': 'something different'}, partial=True)
self.assertEquals(True, second_serializer.is_valid())
class DictStyleSerializer(serializers.Serializer):
"""