Fixed #24818 -- Prevented models.CharField from accepting a string as max_length

This commit is contained in:
Alasdair Nicol 2015-05-19 10:43:06 +01:00 committed by Tim Graham
parent ae1efb853c
commit d091b75eef
2 changed files with 18 additions and 6 deletions

View file

@ -129,6 +129,22 @@ class CharFieldTests(IsolatedModelsTestCase):
]
self.assertEqual(errors, expected)
def test_str_max_length_value(self):
class Model(models.Model):
field = models.CharField(max_length='20')
field = Model._meta.get_field('field')
errors = field.check()
expected = [
Error(
"'max_length' must be a positive integer.",
hint=None,
obj=field,
id='fields.E121',
),
]
self.assertEqual(errors, expected)
def test_non_iterable_choices(self):
class Model(models.Model):
field = models.CharField(max_length=10, choices='bad')