Commit 46906b2b by Tom Christie

Merge pull request #1308 from lukaszb/missing-custom-validation-method-test

Added missing custom validation method test
parents c66b0f88 71aa5f3c
...@@ -47,6 +47,12 @@ class ShouldValidateModel(models.Model): ...@@ -47,6 +47,12 @@ class ShouldValidateModel(models.Model):
class ShouldValidateModelSerializer(serializers.ModelSerializer): class ShouldValidateModelSerializer(serializers.ModelSerializer):
renamed = serializers.CharField(source='should_validate_field', required=False) renamed = serializers.CharField(source='should_validate_field', required=False)
def validate_renamed(self, attrs, source):
value = attrs[source]
if len(value) < 3:
raise serializers.ValidationError('Minimum 3 characters.')
return attrs
class Meta: class Meta:
model = ShouldValidateModel model = ShouldValidateModel
fields = ('renamed',) fields = ('renamed',)
...@@ -63,6 +69,13 @@ class TestPreSaveValidationExclusionsSerializer(TestCase): ...@@ -63,6 +69,13 @@ class TestPreSaveValidationExclusionsSerializer(TestCase):
self.assertEqual(serializer.is_valid(), False) self.assertEqual(serializer.is_valid(), False)
class TestCustomValidationMethods(TestCase):
def test_custom_validation_method_is_executed(self):
serializer = ShouldValidateModelSerializer(data={'renamed': 'fo'})
self.assertFalse(serializer.is_valid())
self.assertIn('renamed', serializer.errors)
class ValidationSerializer(serializers.Serializer): class ValidationSerializer(serializers.Serializer):
foo = serializers.CharField() foo = serializers.CharField()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment