def test_window(self): wl = MapWindow(0, 1) # left wc = MapWindow(1, 1) # center wc2 = MapWindow(10, 5) # another center wr = MapWindow(8000, 50) # right assert wl.ofs_end() == 1 assert wc.ofs_end() == 2 assert wr.ofs_end() == 8050 # extension does nothing if already in place maxsize = 100 wc.extend_left_to(wl, maxsize) assert wc.ofs == 1 and wc.size == 1 wl.extend_right_to(wc, maxsize) wl.extend_right_to(wc, maxsize) assert wl.ofs == 0 and wl.size == 1 # an actual left extension pofs_end = wc2.ofs_end() wc2.extend_left_to(wc, maxsize) assert wc2.ofs == wc.ofs_end() and pofs_end == wc2.ofs_end() # respects maxsize wc.extend_right_to(wr, maxsize) assert wc.ofs == 1 and wc.size == maxsize wc.extend_right_to(wr, maxsize) assert wc.ofs == 1 and wc.size == maxsize # without maxsize wc.extend_right_to(wr, sys.maxsize) assert wc.ofs_end() == wr.ofs and wc.ofs == 1 # extend left wr.extend_left_to(wc2, maxsize) wr.extend_left_to(wc2, maxsize) assert wr.size == maxsize wr.extend_left_to(wc2, sys.maxsize) assert wr.ofs == wc2.ofs_end() wc.align() assert wc.ofs == 0 and wc.size == align_to_mmap(wc.size, True)