Example #1
0
def Intersect_test():
    eq_(Interval(10, 20) & Interval(1, 9), Interval.Empty())
    eq_(Interval(10, 20) & Interval(21, 30), Interval.Empty())
    eq_(Interval(10, 20) & Interval(20, 30), Interval(20, 20))
    eq_(Interval(10, 20) & Interval(1, 10), Interval(10, 10))
    eq_(Interval(10, 20) & Interval(1, 15), Interval(10, 15))
    eq_(Interval(10, 20) & Interval(17, 25), Interval(17, 20))
    eq_(Interval(10, 20) & Interval(1, 30), Interval(10, 20))

    s = IntervalSet(Interval(5, 10), Interval(20, 25))
    eq_(Interval(1, 4) & s, Interval.Empty())
    eq_(Interval(7, 15) & s, Interval(7, 10))
    eq_(Interval(23, 30) & s, Interval(23, 25))
    eq_(Interval(26, 30) & s, Interval.Empty())
    eq_(Interval(7, 25) & s, IntervalSet(Interval(7, 10), Interval(20, 25)))
Example #2
0
def Subtract_test():
    ok_(not (Interval(10, 20) - Interval(10, 20)))
    ok_(not (Interval(10, 20) - Interval(5, 25)))
    eq_(Interval(10, 20) - Interval(10, 20), Interval.Empty())
    eq_(Interval(10, 20) - Interval(5, 25), Interval.Empty())
    eq_(Interval(10, 20) - Interval(1, 10), Interval(11, 20))
    eq_(Interval(10, 20) - Interval(1, 13), Interval(14, 20))
    eq_(Interval(10, 20) - Interval(20, 30), Interval(10, 19))
    eq_(Interval(10, 20) - Interval(16, 30), Interval(10, 15))
    eq_(
        Interval(10, 20) - Interval(14, 17),
        IntervalSet(Interval(10, 13), Interval(18, 20)))

    eq_(
        Interval(1, 10) - IntervalSet(Interval(2, 3), Interval(5, 7)),
        IntervalSet(Interval(1, 1), Interval(4, 4), Interval(8, 10)))
Example #3
0
def Boolean_test():
    ok_(Interval(1, 1))
    ok_(Interval(1, 10))
    ok_(not Interval(2, 1))
    ok_(not Interval(0, 0))
    ok_(not Interval(0, 5))
    ok_(not Interval(-1, 1))
    ok_(not Interval.Empty())