Only raise FileLength validation error on files
This commit is contained in:
@@ -1,7 +1,10 @@
|
|||||||
|
from datetime import datetime
|
||||||
import re
|
import re
|
||||||
|
|
||||||
|
from werkzeug.datastructures import FileStorage
|
||||||
from wtforms.validators import ValidationError, StopValidation
|
from wtforms.validators import ValidationError, StopValidation
|
||||||
import pendulum
|
import pendulum
|
||||||
from datetime import datetime
|
|
||||||
from atst.utils.localization import translate
|
from atst.utils.localization import translate
|
||||||
|
|
||||||
|
|
||||||
@@ -103,7 +106,7 @@ def RequiredIf(criteria_function, message=translate("forms.validators.is_require
|
|||||||
|
|
||||||
def FileLength(max_length=50000000, message=None):
|
def FileLength(max_length=50000000, message=None):
|
||||||
def _file_length(_form, field):
|
def _file_length(_form, field):
|
||||||
if field.data is None:
|
if field.data is None or not isinstance(field.data, FileStorage):
|
||||||
return True
|
return True
|
||||||
|
|
||||||
content = field.data.read()
|
content = field.data.read()
|
||||||
|
@@ -100,3 +100,6 @@ class TestFileLength:
|
|||||||
|
|
||||||
with pytest.raises(ValidationError):
|
with pytest.raises(ValidationError):
|
||||||
validator(dummy_form, dummy_field)
|
validator(dummy_form, dummy_field)
|
||||||
|
|
||||||
|
dummy_field.data = "random string"
|
||||||
|
assert validator(dummy_form, dummy_field)
|
||||||
|
Reference in New Issue
Block a user