2
# -*- coding: utf-8 -*-
4
'''Routines for validating various data types'''
8
def validate_number(num):
9
if ( type(num) is int or
15
def validate_package_name(name):
16
distro_regex = re.compile("^[\w-]+(?: \(\w+\)|)$")
17
m = distro_regex.search(name)
23
if __name__ == "__main__":
25
1, 0, 100000000000000000000000000000000000000,
26
'1', '0', '100000000000000000000000000000000000000',
28
should_be_valid_numbers = [
29
'-1', '+1', '1E23', '1.2E3.4', '-4E-321',
34
valid_package_names = [
35
'xorg', 'xserver-xorg', 'xserver-xorg-video-intel (Ubuntu)',
37
invalid_package_names = [
38
'this is not a valid package name',
43
'xorg 1.2.3-4ubuntu6',
46
print "Valid numbers:"
47
for num in valid_numbers:
48
print validate_number(num), num
51
print "Should be (TODO)"
54
print "Invalid numbers:"
55
for num in invalid_numbers:
56
print validate_number(num), num
59
print "Valid package names:"
60
for name in valid_package_names:
61
print validate_package_name(name), name
64
print "Invalid package names:"
65
for name in invalid_package_names:
66
print validate_package_name(name), name