summaryrefslogtreecommitdiff
path: root/test1.py
blob: 737d550812e0f5ef5b3db8e5845c556a7747492c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/usr/bin/env python3

from rfc1982_serial_number import Serial, find_intermediate
from random import randint

for test in range(10000):
    i1 = Serial(randint(0, Serial.modulus - 1))
    i2 = Serial(randint(0, Serial.modulus - 1))

    assert i1 == i2 or \
        (i1 < i2 and not (i1 > i2)) or \
        (i1 > i2 and not (i1 < i2)) or \
        int(i1) ^ int(i2) == Serial.modulus >> 1
    
    step = [i1, i2]
    wrap = find_intermediate(i1, i2)
    if wrap is not None:
        step.insert(1, wrap)

    print(" => ".join(str(s) for s in step))