Check if maxlen/minlen make sense in conf.usertypes.String.

This commit is contained in:
Florian Bruhin 2014-08-05 07:26:48 +02:00
parent b2d24a4435
commit 98cc10b9c2

View File

@ -195,6 +195,13 @@ class String(BaseType):
def __init__(self, minlen=None, maxlen=None, forbidden=None,
none_ok=False):
super().__init__(none_ok)
if minlen is not None and minlen < 1:
raise ValueError("minlen ({}) needs to be >= 1!".format(minlen))
elif maxlen is not None and maxlen < 1:
raise ValueError("maxlen ({}) needs to be >= 1!".format(maxlen))
elif maxlen is not None and minlen is not None and maxlen > minlen:
raise ValueError("minlen ({}) needs to be <= maxlen ({})!".format(
minlen, maxlen))
self.minlen = minlen
self.maxlen = maxlen
self.forbidden = forbidden