aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/tests
diff options
context:
space:
mode:
authorJens Alm2012-10-15 10:06:50 +0200
committerJens Alm2012-10-15 10:06:50 +0200
commit36cc56bc9d49832ca990ba8568903966f46a2938 (patch)
tree186eaa2127166cfbaeaf788a79ef7f4f611df3ce /rest_framework/tests
parent241be38340dcea9a49ce741ba844171ce02db2bd (diff)
downloaddjango-rest-framework-36cc56bc9d49832ca990ba8568903966f46a2938.tar.bz2
Added tests for TextField
Diffstat (limited to 'rest_framework/tests')
-rw-r--r--rest_framework/tests/serializer.py29
1 files changed, 29 insertions, 0 deletions
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):