1try:
2    import urandom as random
3except ImportError:
4    try:
5        import random
6    except ImportError:
7        print("SKIP")
8        raise SystemExit
9
10try:
11    random.randint
12except AttributeError:
13    print("SKIP")
14    raise SystemExit
15
16print("randrange")
17for i in range(50):
18    assert 0 <= random.randrange(4) < 4
19    assert 2 <= random.randrange(2, 6) < 6
20    assert -2 <= random.randrange(-2, 2) < 2
21    assert random.randrange(1, 9, 2) in (1, 3, 5, 7)
22    assert random.randrange(2, 1, -1) in (1, 2)
23
24# empty range
25try:
26    random.randrange(0)
27except ValueError:
28    print("ValueError")
29
30# empty range
31try:
32    random.randrange(2, 1)
33except ValueError:
34    print("ValueError")
35
36# zero step
37try:
38    random.randrange(2, 1, 0)
39except ValueError:
40    print("ValueError")
41
42# empty range
43try:
44    random.randrange(2, 1, 1)
45except ValueError:
46    print("ValueError")
47
48print("randint")
49for i in range(50):
50    assert 0 <= random.randint(0, 4) <= 4
51    assert 2 <= random.randint(2, 6) <= 6
52    assert -2 <= random.randint(-2, 2) <= 2
53
54# empty range
55try:
56    random.randint(2, 1)
57except ValueError:
58    print("ValueError")
59
60print("choice")
61lst = [1, 2, 5, 6]
62for i in range(50):
63    assert random.choice(lst) in lst
64
65# empty sequence
66try:
67    random.choice([])
68except IndexError:
69    print("IndexError")
70