def test_basics(T: Any) -> None: print('^332-1^', 'test_basics') T.eq('^T1^', type(new_segment(( 42, 48, ))), Segment) T.ne('^T2^', type(new_segment(( 42, 48, ))), tuple) urge('^21-1^', new_segment(( 42, 48, ))) urge('^21-2^', Segment( 42, 48, )) urge('^21-3^', Lap(Segment( 42, 48, ))) T.eq('^T3^', new_segment(( 42, 48, )), Segment(42, 48)) T.eq('^T4^', new_segment(lo=42, hi=48), Segment(42, 48)) try: new_segment(42, 48) except TypeError: T.ok('^T5^', True) else: T.fail('^T6^', "`new_segment()` with two unnamed arguments should fail")
def test_hashing(T: Any) -> None: print('^332-1^', 'test_hashing') T.eq('^T10^', { Segment(3, 4): 42, }, { Segment(3, 4): 42, })
def S(lo: int, hi: int) -> Segment: return Segment(lo, hi)
def S(lo, hi): return Segment(lo, hi) # type: ignore
def test_sorting(T: Any) -> None: print('^332-1^', 'test_sorting') T.eq('^T10^', Segment(3, 4) < Segment(4, 4), True) T.eq('^T11^', Segment(5, 8) < Segment(5, 7), False) T.eq('^T12^', Segment(5, 8) > Segment(5, 7), True) #......................................................................................................... T.eq('^T13^', new_lap((3, 4)) < new_lap(( 1, 1, )), False) T.eq('^T14^', new_lap((3, 4)) == new_lap(( 1, 1, )), False) T.eq('^T15^', new_lap((3, 4)) > new_lap(( 1, 1, )), True) #......................................................................................................... T.eq('^T16^', new_lap((3, 4)) < new_lap(( 4, 4, )), True) T.eq('^T17^', new_lap((3, 4)) == new_lap(( 4, 4, )), False) T.eq('^T18^', new_lap((3, 4)) > new_lap(( 4, 4, )), False) #......................................................................................................... T.eq('^T19^', new_lap((3, 4)) < new_lap(( 3, 5, )), True) T.eq('^T20^', new_lap((3, 4)) == new_lap(( 3, 5, )), False) T.eq('^T21^', new_lap((3, 4)) > new_lap(( 3, 5, )), False) #......................................................................................................... T.eq('^T22^', new_lap((3, 4)) < new_lap(( 5, 5, )), True) T.eq('^T23^', new_lap((3, 4)) == new_lap(( 5, 5, )), False) T.eq('^T24^', new_lap((3, 4)) > new_lap(( 5, 5, )), False)