Allow Falsey values for IsNumber validator
We should use Required() instead to ensure data is present, if that's the desired behavior
This commit is contained in:
parent
c460f91045
commit
b3dd32f3f7
@ -36,10 +36,11 @@ def DateRange(lower_bound=None, upper_bound=None, message=None):
|
||||
|
||||
def IsNumber(message=translate("forms.validators.is_number_message")):
|
||||
def _is_number(form, field):
|
||||
try:
|
||||
int(field.data)
|
||||
except (ValueError, TypeError):
|
||||
raise ValidationError(message)
|
||||
if field.data:
|
||||
try:
|
||||
int(field.data)
|
||||
except (ValueError, TypeError):
|
||||
raise ValidationError(message)
|
||||
|
||||
return _is_number
|
||||
|
||||
|
@ -11,7 +11,7 @@ class TestIsNumber:
|
||||
dummy_field.data = valid
|
||||
validator(dummy_form, dummy_field)
|
||||
|
||||
@pytest.mark.parametrize("invalid", ["12.1", "two", "", None])
|
||||
@pytest.mark.parametrize("invalid", ["12.1", "two"])
|
||||
def test_IsNumber_rejects_anything_else(self, invalid, dummy_form, dummy_field):
|
||||
validator = IsNumber()
|
||||
dummy_field.data = invalid
|
||||
|
Loading…
x
Reference in New Issue
Block a user