diff options
| author | Tom Christie | 2014-10-31 16:38:39 +0000 |
|---|---|---|
| committer | Tom Christie | 2014-10-31 16:38:39 +0000 |
| commit | 207208fedff2457e921ef7d825ea7c3933b5dd6e (patch) | |
| tree | 82ef4afacbc78d7af6f13fb73342794a1102415f /tests | |
| parent | 11075d37709d1ee41f14361cb521ff8d1aa0cc1d (diff) | |
| download | django-rest-framework-207208fedff2457e921ef7d825ea7c3933b5dd6e.tar.bz2 | |
Lazy loading of fields and validators. Closes #1963.
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/test_fields.py | 4 | ||||
| -rw-r--r-- | tests/test_model_serializer.py | 4 | ||||
| -rw-r--r-- | tests/test_validators.py | 16 |
3 files changed, 16 insertions, 8 deletions
diff --git a/tests/test_fields.py b/tests/test_fields.py index 3e102ab5..96d09900 100644 --- a/tests/test_fields.py +++ b/tests/test_fields.py @@ -85,7 +85,7 @@ class TestSource: class ExampleSerializer(serializers.Serializer): example_field = serializers.CharField(source='example_field') with pytest.raises(AssertionError) as exc_info: - ExampleSerializer() + ExampleSerializer().fields assert str(exc_info.value) == ( "It is redundant to specify `source='example_field'` on field " "'CharField' in serializer 'ExampleSerializer', because it is the " @@ -1018,7 +1018,7 @@ class TestSerializerMethodField: example_field = serializers.SerializerMethodField('get_example_field') with pytest.raises(AssertionError) as exc_info: - ExampleSerializer() + ExampleSerializer().fields assert str(exc_info.value) == ( "It is redundant to specify `get_example_field` on " "SerializerMethodField 'example_field' in serializer " diff --git a/tests/test_model_serializer.py b/tests/test_model_serializer.py index 18170bc0..b8b621be 100644 --- a/tests/test_model_serializer.py +++ b/tests/test_model_serializer.py @@ -181,7 +181,7 @@ class TestRegularFieldMappings(TestCase): fields = ('auto_field', 'invalid') with self.assertRaises(ImproperlyConfigured) as excinfo: - TestSerializer() + TestSerializer().fields expected = 'Field name `invalid` is not valid for model `ModelBase`.' assert str(excinfo.exception) == expected @@ -198,7 +198,7 @@ class TestRegularFieldMappings(TestCase): fields = ('auto_field',) with self.assertRaises(ImproperlyConfigured) as excinfo: - TestSerializer() + TestSerializer().fields expected = ( 'Field `missing` has been declared on serializer ' '`TestSerializer`, but is missing from `Meta.fields`.' diff --git a/tests/test_validators.py b/tests/test_validators.py index 6cc52c83..e6e0b23a 100644 --- a/tests/test_validators.py +++ b/tests/test_validators.py @@ -86,10 +86,12 @@ class TestUniquenessTogetherValidation(TestCase): def test_repr(self): serializer = UniquenessTogetherSerializer() expected = dedent(""" - UniquenessTogetherSerializer(validators=[<UniqueTogetherValidator(queryset=UniquenessTogetherModel.objects.all(), fields=('race_name', 'position'))>]): + UniquenessTogetherSerializer(): id = IntegerField(label='ID', read_only=True) race_name = CharField(max_length=100) position = IntegerField() + class Meta: + validators = [<UniqueTogetherValidator(queryset=UniquenessTogetherModel.objects.all(), fields=('race_name', 'position'))>] """) assert repr(serializer) == expected @@ -173,10 +175,12 @@ class TestUniquenessForDateValidation(TestCase): def test_repr(self): serializer = UniqueForDateSerializer() expected = dedent(""" - UniqueForDateSerializer(validators=[<UniqueForDateValidator(queryset=UniqueForDateModel.objects.all(), field='slug', date_field='published')>]): + UniqueForDateSerializer(): id = IntegerField(label='ID', read_only=True) slug = CharField(max_length=100) published = DateField(required=True) + class Meta: + validators = [<UniqueForDateValidator(queryset=UniqueForDateModel.objects.all(), field='slug', date_field='published')>] """) assert repr(serializer) == expected @@ -231,10 +235,12 @@ class TestHiddenFieldUniquenessForDateValidation(TestCase): serializer = TestSerializer() expected = dedent(""" - TestSerializer(validators=[<UniqueForDateValidator(queryset=HiddenFieldUniqueForDateModel.objects.all(), field='slug', date_field='published')>]): + TestSerializer(): id = IntegerField(label='ID', read_only=True) slug = CharField(max_length=100) published = HiddenField(default=CreateOnlyDefault(<function now>)) + class Meta: + validators = [<UniqueForDateValidator(queryset=HiddenFieldUniqueForDateModel.objects.all(), field='slug', date_field='published')>] """) assert repr(serializer) == expected @@ -246,9 +252,11 @@ class TestHiddenFieldUniquenessForDateValidation(TestCase): serializer = TestSerializer() expected = dedent(""" - TestSerializer(validators=[<UniqueForDateValidator(queryset=HiddenFieldUniqueForDateModel.objects.all(), field='slug', date_field='published')>]): + TestSerializer(): id = IntegerField(label='ID', read_only=True) slug = CharField(max_length=100) published = DateTimeField(default=CreateOnlyDefault(<function now>), read_only=True) + class Meta: + validators = [<UniqueForDateValidator(queryset=HiddenFieldUniqueForDateModel.objects.all(), field='slug', date_field='published')>] """) assert repr(serializer) == expected |
