From 5c343ae3e63552e9d49341b2f46e70a717d500ed Mon Sep 17 00:00:00 2001 From: Jody McIntyre Date: Fri, 17 Jun 2016 15:10:57 -0400 Subject: [PATCH] Add failing test of deepcopy issue in is_valid --- tests/test_serializer.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/tests/test_serializer.py b/tests/test_serializer.py index 741c6ab17..f17aa8aff 100644 --- a/tests/test_serializer.py +++ b/tests/test_serializer.py @@ -5,6 +5,9 @@ import pickle import pytest +from django.core.validators import RegexValidator +from django.db import models + from rest_framework import serializers from rest_framework.compat import unicode_repr @@ -87,6 +90,25 @@ class TestValidateMethod: assert not serializer.is_valid() assert serializer.errors == {'char': ['Field error']} + def test_serializer_with_validator(self): + class ExampleModel(models.Model): + username = models.CharField(max_length=100) + + class ExampleSerializer(serializers.ModelSerializer): + class Meta: + model = ExampleModel + fields = '__all__' + extra_kwargs = { + 'username': { + 'validators': [ + RegexValidator('^\w+$'), + ], + }, + } + + serializer = ExampleSerializer(data={}) + serializer.is_valid() + class TestBaseSerializer: def setup(self):