Merge pull request #1604 from ilvalle/fix_1570
prevent is_empty from stripping whitespaces, close #1570
This commit is contained in:
@@ -434,21 +434,21 @@ class TestValidators(unittest.TestCase):
|
|||||||
rtn = IS_NOT_EMPTY()('x')
|
rtn = IS_NOT_EMPTY()('x')
|
||||||
self.assertEqual(rtn, ('x', None))
|
self.assertEqual(rtn, ('x', None))
|
||||||
rtn = IS_NOT_EMPTY()(' x ')
|
rtn = IS_NOT_EMPTY()(' x ')
|
||||||
self.assertEqual(rtn, ('x', None))
|
self.assertEqual(rtn, (' x ', None))
|
||||||
rtn = IS_NOT_EMPTY()(None)
|
rtn = IS_NOT_EMPTY()(None)
|
||||||
self.assertEqual(rtn, (None, 'Enter a value'))
|
self.assertEqual(rtn, (None, 'Enter a value'))
|
||||||
rtn = IS_NOT_EMPTY()('')
|
rtn = IS_NOT_EMPTY()('')
|
||||||
self.assertEqual(rtn, ('', 'Enter a value'))
|
self.assertEqual(rtn, ('', 'Enter a value'))
|
||||||
rtn = IS_NOT_EMPTY()(' ')
|
rtn = IS_NOT_EMPTY()(' ')
|
||||||
self.assertEqual(rtn, ('', 'Enter a value'))
|
self.assertEqual(rtn, (' ', 'Enter a value'))
|
||||||
rtn = IS_NOT_EMPTY()(' \n\t')
|
rtn = IS_NOT_EMPTY()(' \n\t')
|
||||||
self.assertEqual(rtn, ('', 'Enter a value'))
|
self.assertEqual(rtn, (' \n\t', 'Enter a value'))
|
||||||
rtn = IS_NOT_EMPTY()([])
|
rtn = IS_NOT_EMPTY()([])
|
||||||
self.assertEqual(rtn, ([], 'Enter a value'))
|
self.assertEqual(rtn, ([], 'Enter a value'))
|
||||||
rtn = IS_NOT_EMPTY(empty_regex='def')('def')
|
rtn = IS_NOT_EMPTY(empty_regex='def')('def')
|
||||||
self.assertEqual(rtn, ('', 'Enter a value'))
|
self.assertEqual(rtn, ('def', 'Enter a value'))
|
||||||
rtn = IS_NOT_EMPTY(empty_regex='de[fg]')('deg')
|
rtn = IS_NOT_EMPTY(empty_regex='de[fg]')('deg')
|
||||||
self.assertEqual(rtn, ('', 'Enter a value'))
|
self.assertEqual(rtn, ('deg', 'Enter a value'))
|
||||||
rtn = IS_NOT_EMPTY(empty_regex='def')('abc')
|
rtn = IS_NOT_EMPTY(empty_regex='def')('abc')
|
||||||
self.assertEqual(rtn, ('abc', None))
|
self.assertEqual(rtn, ('abc', None))
|
||||||
|
|
||||||
@@ -785,7 +785,7 @@ class TestValidators(unittest.TestCase):
|
|||||||
rtn = IS_EMPTY_OR(IS_EMAIL())('abc')
|
rtn = IS_EMPTY_OR(IS_EMAIL())('abc')
|
||||||
self.assertEqual(rtn, ('abc', 'Enter a valid email address'))
|
self.assertEqual(rtn, ('abc', 'Enter a valid email address'))
|
||||||
rtn = IS_EMPTY_OR(IS_EMAIL())(' abc ')
|
rtn = IS_EMPTY_OR(IS_EMAIL())(' abc ')
|
||||||
self.assertEqual(rtn, ('abc', 'Enter a valid email address'))
|
self.assertEqual(rtn, (' abc ', 'Enter a valid email address'))
|
||||||
rtn = IS_EMPTY_OR(IS_IN_SET([('id1', 'first label'), ('id2', 'second label')], zero='zero')).options(zero=False)
|
rtn = IS_EMPTY_OR(IS_IN_SET([('id1', 'first label'), ('id2', 'second label')], zero='zero')).options(zero=False)
|
||||||
self.assertEqual(rtn, [('', ''), ('id1', 'first label'), ('id2', 'second label')])
|
self.assertEqual(rtn, [('', ''), ('id1', 'first label'), ('id2', 'second label')])
|
||||||
rtn = IS_EMPTY_OR(IS_IN_SET([('id1', 'first label'), ('id2', 'second label')], zero='zero')).options()
|
rtn = IS_EMPTY_OR(IS_IN_SET([('id1', 'first label'), ('id2', 'second label')], zero='zero')).options()
|
||||||
|
|||||||
+3
-2
@@ -989,14 +989,15 @@ class IS_DECIMAL_IN_RANGE(Validator):
|
|||||||
|
|
||||||
|
|
||||||
def is_empty(value, empty_regex=None):
|
def is_empty(value, empty_regex=None):
|
||||||
|
_value = value
|
||||||
"""test empty field"""
|
"""test empty field"""
|
||||||
if isinstance(value, (str, unicodeT)):
|
if isinstance(value, (str, unicodeT)):
|
||||||
value = value.strip()
|
value = value.strip()
|
||||||
if empty_regex is not None and empty_regex.match(value):
|
if empty_regex is not None and empty_regex.match(value):
|
||||||
value = ''
|
value = ''
|
||||||
if value is None or value == '' or value == []:
|
if value is None or value == '' or value == []:
|
||||||
return (value, True)
|
return (_value, True)
|
||||||
return (value, False)
|
return (_value, False)
|
||||||
|
|
||||||
|
|
||||||
class IS_NOT_EMPTY(Validator):
|
class IS_NOT_EMPTY(Validator):
|
||||||
|
|||||||
Reference in New Issue
Block a user