diff options
| author | Mark Aaron Shirley | 2013-01-08 08:33:01 -0800 |
|---|---|---|
| committer | Mark Aaron Shirley | 2013-01-08 08:33:01 -0800 |
| commit | 81691ff9008c69ee02d4a337dc91ddc523c81b6a (patch) | |
| tree | 99886aa8aacafeec89bc90aa04c616be3429ce5a /rest_framework/tests/serializer.py | |
| parent | a897eb5480348838b11fdb428ce0d110e8bc8da1 (diff) | |
| parent | 431ced66e49905fd76db0c36f62794dc3f42470b (diff) | |
| download | django-rest-framework-81691ff9008c69ee02d4a337dc91ddc523c81b6a.tar.bz2 | |
Merge remote-tracking branch 'upstream/master' into null-one-to-one
Diffstat (limited to 'rest_framework/tests/serializer.py')
| -rw-r--r-- | rest_framework/tests/serializer.py | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/rest_framework/tests/serializer.py b/rest_framework/tests/serializer.py index 8767385e..bd96ba23 100644 --- a/rest_framework/tests/serializer.py +++ b/rest_framework/tests/serializer.py @@ -69,6 +69,7 @@ class AlbumsSerializer(serializers.ModelSerializer): model = Album fields = ['title'] # lists are also valid options + class PositiveIntegerAsChoiceSerializer(serializers.ModelSerializer): class Meta: model = HasPositiveIntegerAsChoice @@ -240,6 +241,25 @@ class ValidationTests(TestCase): self.assertFalse(serializer.is_valid()) self.assertEquals(serializer.errors, {'content': [u'Test not in value']}) + def test_bad_type_data_is_false(self): + """ + Data of the wrong type is not valid. + """ + data = ['i am', 'a', 'list'] + serializer = CommentSerializer(self.comment, data=data) + self.assertEquals(serializer.is_valid(), False) + self.assertEquals(serializer.errors, {'non_field_errors': [u'Invalid data']}) + + data = 'and i am a string' + serializer = CommentSerializer(self.comment, data=data) + self.assertEquals(serializer.is_valid(), False) + self.assertEquals(serializer.errors, {'non_field_errors': [u'Invalid data']}) + + data = 42 + serializer = CommentSerializer(self.comment, data=data) + self.assertEquals(serializer.is_valid(), False) + self.assertEquals(serializer.errors, {'non_field_errors': [u'Invalid data']}) + def test_cross_field_validation(self): class CommentSerializerWithCrossFieldValidator(CommentSerializer): |
