diff options
| author | Tom Christie | 2014-09-25 13:37:26 +0100 | 
|---|---|---|
| committer | Tom Christie | 2014-09-25 13:37:26 +0100 | 
| commit | 417fe1b675bd1d42518fb89a6f81547caef5b735 (patch) | |
| tree | de79fa6de383fd28f551b6e9e88d7a4a5859672d /tests/test_serializer.py | |
| parent | 3a5335f09f58439f8e3c0bddbed8e4c7eeb32482 (diff) | |
| download | django-rest-framework-417fe1b675bd1d42518fb89a6f81547caef5b735.tar.bz2 | |
Partial support
Diffstat (limited to 'tests/test_serializer.py')
| -rw-r--r-- | tests/test_serializer.py | 33 | 
1 files changed, 32 insertions, 1 deletions
| diff --git a/tests/test_serializer.py b/tests/test_serializer.py index b0eb4e27..5646f994 100644 --- a/tests/test_serializer.py +++ b/tests/test_serializer.py @@ -1,3 +1,35 @@ +from rest_framework import serializers + + +# Tests for core functionality. +# ----------------------------- + +class TestSerializer: +    def setup(self): +        class ExampleSerializer(serializers.Serializer): +            char = serializers.CharField() +            integer = serializers.IntegerField() +        self.Serializer = ExampleSerializer + +    def test_valid_serializer(self): +        serializer = self.Serializer(data={'char': 'abc', 'integer': 123}) +        assert serializer.is_valid() +        assert serializer.validated_data == {'char': 'abc', 'integer': 123} +        assert serializer.errors == {} + +    def test_invalid_serializer(self): +        serializer = self.Serializer(data={'char': 'abc'}) +        assert not serializer.is_valid() +        assert serializer.validated_data == {} +        assert serializer.errors == {'integer': ['This field is required.']} + +    def test_partial_validation(self): +        serializer = self.Serializer(data={'char': 'abc'}, partial=True) +        assert serializer.is_valid() +        assert serializer.validated_data == {'char': 'abc'} +        assert serializer.errors == {} + +  # # -*- coding: utf-8 -*-  # from __future__ import unicode_literals  # from django.db import models @@ -334,7 +366,6 @@  #         Check _data attribute is cleared on `save()`  #         Regression test for #1116 -#             — id field is not populated if `data` is accessed prior to `save()`  #         """  #         serializer = ActionItemSerializer(self.actionitem)  #         self.assertIsNone(serializer.data.get('id', None), 'New instance. `id` should not be set.') | 
