diff options
Diffstat (limited to 'rest_framework/tests/fields.py')
| -rw-r--r-- | rest_framework/tests/fields.py | 54 | 
1 files changed, 22 insertions, 32 deletions
| diff --git a/rest_framework/tests/fields.py b/rest_framework/tests/fields.py index 22c515a9..bff4400b 100644 --- a/rest_framework/tests/fields.py +++ b/rest_framework/tests/fields.py @@ -3,17 +3,13 @@ General serializer field tests.  """  from __future__ import unicode_literals -from collections import namedtuple +import datetime  from decimal import Decimal  from uuid import uuid4 - -import datetime -from django import forms  from django.core import validators  from django.db import models  from django.test import TestCase  from django.utils.datastructures import SortedDict -  from rest_framework import serializers  from rest_framework.fields import Field, CharField  from rest_framework.serializers import Serializer @@ -784,12 +780,12 @@ class SlugFieldTests(TestCase):          """          class SlugFieldSerializer(serializers.ModelSerializer):              slug_field = serializers.SlugField(source='slug_field', max_length=20, required=True) -         +              class Meta:                  model = self.SlugFieldModel -                 +          s = SlugFieldSerializer(data={'slug_field': 'a b'}) -         +          self.assertEqual(s.is_valid(), False)          self.assertEqual(s.errors,  {'slug_field': ["Enter a valid 'slug' consisting of letters, numbers, underscores or hyphens."]}) @@ -839,7 +835,7 @@ class URLFieldTests(TestCase):                           'max_length'), 20) -class HumanizedField(TestCase): +class FieldMetadata(TestCase):      def setUp(self):          self.required_field = Field()          self.required_field.label = uuid4().hex @@ -849,41 +845,35 @@ class HumanizedField(TestCase):          self.optional_field.label = uuid4().hex          self.optional_field.required = False -    def test_type(self): -        for field in (self.required_field, self.optional_field): -            self.assertEqual(field.humanized['type'], field.type_name) -      def test_required(self): -        self.assertEqual(self.required_field.humanized['required'], True) +        self.assertEqual(self.required_field.metadata()['required'], True)      def test_optional(self): -        self.assertEqual(self.optional_field.humanized['required'], False) +        self.assertEqual(self.optional_field.metadata()['required'], False)      def test_label(self):          for field in (self.required_field, self.optional_field): -            self.assertEqual(field.humanized['label'], field.label) +            self.assertEqual(field.metadata()['label'], field.label) -class HumanizableSerializer(Serializer): +class MetadataSerializer(Serializer):      field1 = CharField(3, required=True)      field2 = CharField(10, required=False) -class HumanizedSerializer(TestCase): +class MetadataSerializerTestCase(TestCase):      def setUp(self): -        self.serializer = HumanizableSerializer() +        self.serializer = MetadataSerializer() -    def test_humanized(self): -        humanized = self.serializer.humanized +    def test_serializer_metadata(self): +        metadata = self.serializer.metadata()          expected = { -            'field1': {u'required': True, -                       u'max_length': 3, -                       u'type': u'CharField', -                       u'read_only': False}, -            'field2': {u'required': False, -                       u'max_length': 10, -                       u'type': u'CharField', -                       u'read_only': False}} -        self.assertEqual(set(expected.keys()), set(humanized.keys())) -        for k, v in humanized.iteritems(): -            self.assertEqual(v, expected[k]) +            'field1': {'required': True, +                       'max_length': 3, +                       'type': 'string', +                       'read_only': False}, +            'field2': {'required': False, +                       'max_length': 10, +                       'type': 'string', +                       'read_only': False}} +        self.assertEqual(expected, metadata) | 
