parts/django/tests/modeltests/validation/__init__.py
author Nishanth Amuluru <nishanth@fossee.in>
Sun, 09 Jan 2011 00:53:11 +0530
changeset 348 1eb24b1662cf
parent 307 c6bca38c1cbf
permissions -rw-r--r--
commenting does not need a verbose_name

import unittest

from django.core.exceptions import ValidationError

class ValidationTestCase(unittest.TestCase):
    def assertFailsValidation(self, clean, failed_fields):
        self.assertRaises(ValidationError, clean)
        try:
            clean()
        except ValidationError, e:
            self.assertEquals(sorted(failed_fields), sorted(e.message_dict.keys()))
    
    def assertFieldFailsValidationWithMessage(self, clean, field_name, message):
        self.assertRaises(ValidationError, clean)
        try:
            clean()
        except ValidationError, e:
            self.assertTrue(field_name in e.message_dict)
            self.assertEquals(message, e.message_dict[field_name])