aboutsummaryrefslogtreecommitdiffstats
path: root/tests/test_serializer.py
diff options
context:
space:
mode:
authorTom Christie2014-09-25 13:37:26 +0100
committerTom Christie2014-09-25 13:37:26 +0100
commit417fe1b675bd1d42518fb89a6f81547caef5b735 (patch)
treede79fa6de383fd28f551b6e9e88d7a4a5859672d /tests/test_serializer.py
parent3a5335f09f58439f8e3c0bddbed8e4c7eeb32482 (diff)
downloaddjango-rest-framework-417fe1b675bd1d42518fb89a6f81547caef5b735.tar.bz2
Partial support
Diffstat (limited to 'tests/test_serializer.py')
-rw-r--r--tests/test_serializer.py33
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.')