diff --git a/secop/datatypes.py b/secop/datatypes.py index 93c9b46..b46b667 100644 --- a/secop/datatypes.py +++ b/secop/datatypes.py @@ -267,12 +267,12 @@ class IntRange(DataType): try: fvalue = float(value) value = int(value) - if not self.min <= value <= self.max or round(fvalue) != fvalue: - raise BadValueError('%r should be an int between %d and %d' % - (value, self.min, self.max)) - return value except Exception: raise BadValueError('Can not convert %r to int' % value) + if not self.min <= value <= self.max or round(fvalue) != fvalue: + raise BadValueError('%r should be an int between %d and %d' % + (value, self.min, self.max)) + return value def __repr__(self): args = (self.min, self.max)