Arthur de Jong

Open Source / Free Software developer

summaryrefslogtreecommitdiffstats
path: root/tests/validation/__init__.py
blob: 01575c1b106cf60a09eea0fea23f97d5ca7e220d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
from django.core.exceptions import ValidationError
from django.test import TestCase


class ValidationTestCase(TestCase):
    def assertFailsValidation(self, clean, failed_fields, **kwargs):
        with self.assertRaises(ValidationError) as cm:
            clean(**kwargs)
        self.assertEqual(sorted(failed_fields), sorted(cm.exception.message_dict))

    def assertFieldFailsValidationWithMessage(self, clean, field_name, message):
        with self.assertRaises(ValidationError) as cm:
            clean()
        self.assertIn(field_name, cm.exception.message_dict)
        self.assertEqual(message, cm.exception.message_dict[field_name])