def test(UC): global trafo_cp037 x = NumberSet(UC) y = x.clone() x.transform_by_table(trafo_cp037) x.assert_consistency() print "0x%02X --> 0x%s" % (UC, x.get_string(Option="hex"))
def verify(A, TrafoInfo): result = NumberSet() for interval in A.get_intervals(): for x in range(interval.begin, interval.end): for source_begin, source_end, target_begin in TrafoInfo: if x >= source_begin and x < source_end: offset = x - source_begin y = target_begin + offset result.add_interval(Interval(y)) result.assert_consistency() return result
def prepare(A_list, B_list): A = NumberSet() B = NumberSet() for begin, end in A_list: A.add_interval(Interval(begin, end)) for begin, end in B_list: B.add_interval(Interval(begin, end)) A.assert_consistency() B.assert_consistency() return A, B
def test(Border, List): x = NumberSet([Interval(a, b) for a, b in List]) y = deepcopy(x) z = deepcopy(x) print "Border: %s" % Border print "NumberSet: %s" % x x.cut_lesser(Border) x.assert_consistency() y.cut_greater_or_equal(Border) x.assert_consistency() print "cut_lesser --> %s" % x print "cut_greater_or_equal --> %s" % y print "______________________________________" assert x.union(y).is_equal(z)
global trafo_cp037 x = NumberSet(UC) y = x.clone() x.transform_by_table(trafo_cp037) x.assert_consistency() print "0x%02X --> 0x%s" % (UC, x.get_string(Option="hex")) for letter in xrange(-2, 258): test(letter) elif "all" in sys.argv: x = NumberSet(Interval(0, 0x100)) y = x.clone() x.transform_by_table(trafo_cp037) x.assert_consistency() print "0x%s --> 0x%s" % (y, x.get_string(Option="hex")) elif "some" in sys.argv: x = NumberSet(Interval(0, 0x32)) y = x.clone() x.transform_by_table(trafo_cp037) x.assert_consistency() print "0x%s --> 0x%s" % (y, x.get_string(Option="hex")) x = NumberSet(Interval(0x42, 0x80)) y = x.clone() x.transform_by_table(trafo_cp037) x.assert_consistency() print "0x%s --> 0x%s" % (y, x.get_string(Option="hex"))