diff options
| author | Jens Alm | 2012-10-15 10:06:50 +0200 | 
|---|---|---|
| committer | Jens Alm | 2012-10-15 10:06:50 +0200 | 
| commit | 36cc56bc9d49832ca990ba8568903966f46a2938 (patch) | |
| tree | 186eaa2127166cfbaeaf788a79ef7f4f611df3ce /rest_framework | |
| parent | 241be38340dcea9a49ce741ba844171ce02db2bd (diff) | |
| download | django-rest-framework-36cc56bc9d49832ca990ba8568903966f46a2938.tar.bz2 | |
Added tests for TextField
Diffstat (limited to 'rest_framework')
| -rw-r--r-- | rest_framework/serializers.py | 2 | ||||
| -rw-r--r-- | rest_framework/tests/serializer.py | 29 | 
2 files changed, 30 insertions, 1 deletions
diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index 0f19956e..5afbced2 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -381,7 +381,7 @@ class ModelSerializer(Serializer):              models.DateField: DateField,              models.EmailField: EmailField,              models.CharField: CharField, -			models.TextField: TextField, +            models.TextField: TextField,              models.CommaSeparatedIntegerField: CharField,              models.BooleanField: BooleanField,          } diff --git a/rest_framework/tests/serializer.py b/rest_framework/tests/serializer.py index 256987ad..7208d6a5 100644 --- a/rest_framework/tests/serializer.py +++ b/rest_framework/tests/serializer.py @@ -28,6 +28,26 @@ class CommentSerializer(serializers.Serializer):          return instance +class LongText(object): +    def __init__(self, content): +        self.content = content + +    def __eq__(self, other): +        return all([getattr(self, attr) == getattr(other, attr) +                    for attr in ('content',)]) + + +class LongTextSerializer(serializers.Serializer): +    content = serializers.TextField() + +    def restore_object(self, data, instance=None): +        if instance is None: +            return LongText(**data) +        for key, val in data.items(): +            setattr(instance, key, val) +        return instance + +  class BasicTests(TestCase):      def setUp(self):          self.comment = Comment( @@ -82,6 +102,7 @@ class ValidationTests(TestCase):              'content': 'x' * 1001,              'created': datetime.datetime(2012, 1, 1)          } +        self.long_text = LongText('test test test test')      def test_create(self):          serializer = CommentSerializer(self.data) @@ -102,6 +123,14 @@ class ValidationTests(TestCase):          self.assertEquals(serializer.is_valid(), False)          self.assertEquals(serializer.errors, {'email': [u'This field is required.']}) +    def test_update_long_text(self): +        data = { +            'content' : 'Lorem ipsum dolor sit amet.' +        } +        serializer = LongTextSerializer(data, self.long_text) +        self.assertEquals(serializer.is_valid(), True) +        self.assertEquals(data['content'], self.long_text.content) +  class MetadataTests(TestCase):      def test_empty(self):  | 
