-
Notifications
You must be signed in to change notification settings - Fork 0
/
verify_utils.py
36 lines (31 loc) · 1.1 KB
/
verify_utils.py
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
#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
Sanity checking functions.
Functions:
verify_int_value(value_to_check, minimum=-sys.maxsize - 1, maximum=sys.maxsize)
"""
import sys
import trace_log as trace
sys.path.append('../')
def verify_int_value(value_to_check, default, minimum=-sys.maxsize - 1, maximum=sys.maxsize):
"""
Function to check that a StringVar contains a number.
:param value_to_check: The value to check.
:param default: The default to apply if a number is not contained.
:param minimum: The minimum value that is allowed.
:param maximum: The maximum value that is allowed.
:return: The value to set.
"""
try:
test = int(value_to_check.get())
if test < minimum:
trace.flow("Value reset to minimum: %d" % int(minimum))
value_to_check.set(minimum)
elif test > maximum:
trace.flow("Value reset to maximum: %d" % int(maximum))
else:
trace.detail("Value set to %d" % test)
except ValueError:
value_to_check.set(default)
trace.detail("Value reset to %d" % int(default))