diff options
Diffstat (limited to 'rest_framework/tests/serializer.py')
| -rw-r--r-- | rest_framework/tests/serializer.py | 31 | 
1 files changed, 24 insertions, 7 deletions
| diff --git a/rest_framework/tests/serializer.py b/rest_framework/tests/serializer.py index f80762f0..50a5f5a4 100644 --- a/rest_framework/tests/serializer.py +++ b/rest_framework/tests/serializer.py @@ -1,4 +1,5 @@ -import datetime, pickle +import datetime +import pickle  from django.test import TestCase  from rest_framework import serializers  from rest_framework.tests.models import (Album, ActionItem, Anchor, BasicModel, @@ -727,23 +728,39 @@ class SerializerPickleTests(TestCase):                  fields = ('name', 'age')          pickle.dumps(InnerPersonSerializer(Person(name="Noah", age=950)).data) +  class DepthTest(TestCase): -    def test_depth(self): -        user = Person.objects.create(name="django",age=1) -        post = BlogPost.objects.create(title="Test blog post", writer=user) +    def test_implicit_nesting(self): +        writer = Person.objects.create(name="django", age=1) +        post = BlogPost.objects.create(title="Test blog post", writer=writer) + +        class BlogPostSerializer(serializers.ModelSerializer): +            class Meta: +                model = BlogPost +                depth = 1 + +        serializer = BlogPostSerializer(instance=post) +        expected = {'id': 1, 'title': u'Test blog post', +                    'writer': {'id': 1, 'name': u'django', 'age': 1}} + +        self.assertEqual(serializer.data, expected) + +    def test_explicit_nesting(self): +        writer = Person.objects.create(name="django", age=1) +        post = BlogPost.objects.create(title="Test blog post", writer=writer)          class PersonSerializer(serializers.ModelSerializer):              class Meta:                  model = Person -                fields = ("name", "age")          class BlogPostSerializer(serializers.ModelSerializer): +            writer = PersonSerializer() +              class Meta:                  model = BlogPost -                depth = 1          serializer = BlogPostSerializer(instance=post)          expected = {'id': 1, 'title': u'Test blog post', -                    'writer': {'id': 1, 'name': u'django', 'age':1}} +                    'writer': {'id': 1, 'name': u'django', 'age': 1}}          self.assertEqual(serializer.data, expected) | 
