diff options
| author | Adam Chainz <me@adamj.eu> | 2017-03-05 16:50:33 +0000 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2017-03-11 12:27:29 -0500 |
| commit | a452dddb253ff4fdd793351dac73eeef4d86b83e (patch) | |
| tree | 7f2aacb79f04d8404210c7ce7f68ef0bc0f4e3de /tests/invalid_models_tests/test_ordinary_fields.py | |
| parent | 75503a823f6358892fff5aeb3691683ad9cc5a60 (diff) | |
Fixed #27904 -- Added a system check that Field.validators are callable.
Diffstat (limited to 'tests/invalid_models_tests/test_ordinary_fields.py')
| -rw-r--r-- | tests/invalid_models_tests/test_ordinary_fields.py | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/tests/invalid_models_tests/test_ordinary_fields.py b/tests/invalid_models_tests/test_ordinary_fields.py index f1f1f07766..9b5b57834d 100644 --- a/tests/invalid_models_tests/test_ordinary_fields.py +++ b/tests/invalid_models_tests/test_ordinary_fields.py @@ -205,6 +205,23 @@ class CharFieldTests(TestCase): ] self.assertEqual(errors, expected) + def test_bad_validators(self): + class Model(models.Model): + field = models.CharField(max_length=10, validators=[True]) + + field = Model._meta.get_field('field') + self.assertEqual(field.check(), [ + Error( + "All 'validators' must be callable.", + hint=( + "validators[0] (True) isn't a function or instance of a " + "validator class." + ), + obj=field, + id='fields.E008', + ), + ]) + @unittest.skipUnless(connection.vendor == 'mysql', "Test valid only for MySQL") def test_too_long_char_field_under_mysql(self): |
