blob: d0f91fd30ad9bd5c7bba9f7cb77a0f03056ed207 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
from .between import between
from .utils import validator
@validator
def length(value, min=None, max=None):
"""
Return whether or not the length of given string is within a specified
range.
Examples::
>>> length('something', min=2)
True
>>> length('something', min=9, max=9)
True
>>> length('something', max=5)
ValidationFailure(func=length, ...)
:param value:
The string to validate.
:param min:
The minimum required length of the string. If not provided, minimum
length will not be checked.
:param max:
The maximum length of the string. If not provided, maximum length
will not be checked.
.. versionadded:: 0.2
"""
if (min is not None and min < 0) or (max is not None and max < 0):
raise AssertionError(
'`min` and `max` need to be greater than zero.'
)
return between(len(value), min=min, max=max)
|