mirror of
https://github.com/django/django.git
synced 2025-11-25 05:04:26 +00:00
Fixed #24531 -- Improved CommaSeparatedIntegerField validation.
`','`, `'1,,1'`, `',1'` etc. are no longer considered as valid comma-separated integer lists.
This commit is contained in:
parent
f4cc0c40a8
commit
3e64f3d0fc
5 changed files with 49 additions and 17 deletions
|
|
@ -2136,24 +2136,28 @@ class ModelOtherFieldTests(TestCase):
|
|||
model = CommaSeparatedInteger
|
||||
fields = '__all__'
|
||||
|
||||
f = CommaSeparatedIntegerForm({'field': '1'})
|
||||
self.assertTrue(f.is_valid())
|
||||
self.assertEqual(f.cleaned_data, {'field': '1'})
|
||||
f = CommaSeparatedIntegerForm({'field': '12'})
|
||||
self.assertTrue(f.is_valid())
|
||||
self.assertEqual(f.cleaned_data, {'field': '12'})
|
||||
f = CommaSeparatedIntegerForm({'field': '1,2,3'})
|
||||
self.assertTrue(f.is_valid())
|
||||
self.assertEqual(f.cleaned_data, {'field': '1,2,3'})
|
||||
f = CommaSeparatedIntegerForm({'field': '10,32'})
|
||||
self.assertTrue(f.is_valid())
|
||||
self.assertEqual(f.cleaned_data, {'field': '10,32'})
|
||||
f = CommaSeparatedIntegerForm({'field': '1a,2'})
|
||||
self.assertEqual(f.errors, {'field': ['Enter only digits separated by commas.']})
|
||||
f = CommaSeparatedIntegerForm({'field': ',,,,'})
|
||||
self.assertTrue(f.is_valid())
|
||||
self.assertEqual(f.cleaned_data, {'field': ',,,,'})
|
||||
self.assertEqual(f.errors, {'field': ['Enter only digits separated by commas.']})
|
||||
f = CommaSeparatedIntegerForm({'field': '1.2'})
|
||||
self.assertEqual(f.errors, {'field': ['Enter only digits separated by commas.']})
|
||||
f = CommaSeparatedIntegerForm({'field': '1,a,2'})
|
||||
self.assertEqual(f.errors, {'field': ['Enter only digits separated by commas.']})
|
||||
f = CommaSeparatedIntegerForm({'field': '1,,2'})
|
||||
self.assertTrue(f.is_valid())
|
||||
self.assertEqual(f.cleaned_data, {'field': '1,,2'})
|
||||
f = CommaSeparatedIntegerForm({'field': '1'})
|
||||
self.assertTrue(f.is_valid())
|
||||
self.assertEqual(f.cleaned_data, {'field': '1'})
|
||||
self.assertEqual(f.errors, {'field': ['Enter only digits separated by commas.']})
|
||||
|
||||
def test_url_on_modelform(self):
|
||||
"Check basic URL field validation on model forms"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue