diff --git a/django/test/testcases.py b/django/test/testcases.py index 4de4750aeee..53ea02a4f09 100644 --- a/django/test/testcases.py +++ b/django/test/testcases.py @@ -31,7 +31,7 @@ from django.test.client import Client from django.test.utils import (get_warnings_state, restore_warnings_state, override_settings) from django.utils import simplejson, unittest as ut2 -from django.utils.encoding import smart_str +from django.utils.encoding import smart_str, force_unicode from django.views.static import serve __all__ = ('DocTestRunner', 'OutputChecker', 'TestCase', 'TransactionTestCase', @@ -335,7 +335,7 @@ class SimpleTestCase(ut2.TestCase): optional.clean(input) self.assertEqual(context_manager.exception.messages, errors) # test required inputs - error_required = [u'This field is required.'] + error_required = [force_unicode(required.error_messages['required'])] for e in EMPTY_VALUES: with self.assertRaises(ValidationError) as context_manager: required.clean(e) diff --git a/tests/regressiontests/test_utils/tests.py b/tests/regressiontests/test_utils/tests.py index c192d51d556..eab6895f0dd 100644 --- a/tests/regressiontests/test_utils/tests.py +++ b/tests/regressiontests/test_utils/tests.py @@ -1,6 +1,6 @@ from __future__ import with_statement, absolute_import -from django.forms import EmailField +from django.forms import EmailField, IntegerField from django.test import SimpleTestCase, TestCase, skipUnlessDBFeature from django.utils.unittest import skip @@ -149,6 +149,12 @@ class AssertFieldOutputTests(SimpleTestCase): self.assertRaises(AssertionError, self.assertFieldOutput, EmailField, {'a@a.com': 'Wrong output'}, {'aaa': error_invalid}) self.assertRaises(AssertionError, self.assertFieldOutput, EmailField, {'a@a.com': 'a@a.com'}, {'aaa': [u'Come on, gimme some well formatted data, dude.']}) + def test_custom_required_message(self): + class MyCustomField(IntegerField): + default_error_messages = { + 'required': u'This is really required.', + } + self.assertFieldOutput(MyCustomField, {}, {}, empty_value=None) __test__ = {"API_TEST": r""" # Some checks of the doctest output normalizer.