diff --git a/gluon/tests/test_validators.py b/gluon/tests/test_validators.py index 49c3c2b1..34bc6e42 100644 --- a/gluon/tests/test_validators.py +++ b/gluon/tests/test_validators.py @@ -434,21 +434,21 @@ class TestValidators(unittest.TestCase): rtn = IS_NOT_EMPTY()('x') self.assertEqual(rtn, ('x', None)) rtn = IS_NOT_EMPTY()(' x ') - self.assertEqual(rtn, ('x', None)) + self.assertEqual(rtn, (' x ', None)) rtn = IS_NOT_EMPTY()(None) self.assertEqual(rtn, (None, 'Enter a value')) rtn = IS_NOT_EMPTY()('') self.assertEqual(rtn, ('', 'Enter a value')) rtn = IS_NOT_EMPTY()(' ') - self.assertEqual(rtn, ('', 'Enter a value')) + self.assertEqual(rtn, (' ', 'Enter a value')) rtn = IS_NOT_EMPTY()(' \n\t') - self.assertEqual(rtn, ('', 'Enter a value')) + self.assertEqual(rtn, (' \n\t', 'Enter a value')) rtn = IS_NOT_EMPTY()([]) self.assertEqual(rtn, ([], 'Enter a value')) 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') - self.assertEqual(rtn, ('', 'Enter a value')) + self.assertEqual(rtn, ('deg', 'Enter a value')) rtn = IS_NOT_EMPTY(empty_regex='def')('abc') self.assertEqual(rtn, ('abc', None)) @@ -785,7 +785,7 @@ class TestValidators(unittest.TestCase): rtn = IS_EMPTY_OR(IS_EMAIL())('abc') self.assertEqual(rtn, ('abc', 'Enter a valid email address')) 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) 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() diff --git a/gluon/validators.py b/gluon/validators.py index 360cb17f..a02f763b 100644 --- a/gluon/validators.py +++ b/gluon/validators.py @@ -989,14 +989,15 @@ class IS_DECIMAL_IN_RANGE(Validator): def is_empty(value, empty_regex=None): + _value = value """test empty field""" if isinstance(value, (str, unicodeT)): value = value.strip() if empty_regex is not None and empty_regex.match(value): value = '' if value is None or value == '' or value == []: - return (value, True) - return (value, False) + return (_value, True) + return (_value, False) class IS_NOT_EMPTY(Validator):