def test_get_gap_index_doublejoin_no_msg(buf2048): join1 = MucOwnJoinMessage('join') join2 = MucOwnJoinMessage('join') for msg in [join1, join2]: buf2048.add_message(msg) gap = buf2048.find_last_gap_muc() assert buf2048.get_gap_index(gap) == 1
def test_find_gap_doublejoin_no_msg(buf2048): join1 = MucOwnJoinMessage('join') join2 = MucOwnJoinMessage('join') for msg in [join1, join2]: buf2048.add_message(msg) gap = buf2048.find_last_gap_muc() assert gap.leave_message is join1 assert gap.join_message is join2
def test_get_gap_index(buf2048): msg1 = Message('1', 'q') msg2 = Message('2', 's') leave = MucOwnLeaveMessage('leave') join = MucOwnJoinMessage('join') msg3 = Message('3', 'd') msg4 = Message('4', 'f') msgs = [msg1, msg2, leave, join, msg3, msg4] for msg in msgs: buf2048.add_message(msg) gap = buf2048.find_last_gap_muc() assert buf2048.get_gap_index(gap) == 3
def test_find_gap_already_filled(buf2048): msg1 = Message('1', 'q') msg2 = Message('2', 's') leave = MucOwnLeaveMessage('leave') msg5 = Message('5', 'g') msg6 = Message('6', 'h') join = MucOwnJoinMessage('join') msg3 = Message('3', 'd') msg4 = Message('4', 'f') msgs = [msg1, msg2, leave, msg5, msg6, join, msg3, msg4] for msg in msgs: buf2048.add_message(msg) assert buf2048.find_last_gap_muc() is None
def test_find_gap(buf2048, msgs_noleave): msg1 = Message('1', 'q') msg2 = Message('2', 's') leave = MucOwnLeaveMessage('leave') join = MucOwnJoinMessage('join') msg3 = Message('3', 'd') msg4 = Message('4', 'f') msgs = [msg1, msg2, leave, join, msg3, msg4] for msg in msgs: buf2048.add_message(msg) gap = buf2048.find_last_gap_muc() assert gap.leave_message == leave assert gap.join_message == join assert gap.last_timestamp_before_leave == msg2.time assert gap.first_timestamp_after_join == msg3.time
def test_add_history_messages(buf2048): msg1 = Message('1', 'q') msg2 = Message('2', 's') leave = MucOwnLeaveMessage('leave') join = MucOwnJoinMessage('join') msg3 = Message('3', 'd') msg4 = Message('4', 'f') msgs = [msg1, msg2, leave, join, msg3, msg4] for msg in msgs: buf2048.add_message(msg) msg5 = Message('5', 'g') msg6 = Message('6', 'h') gap = buf2048.find_last_gap_muc() buf2048.add_history_messages([msg5, msg6], gap=gap) assert buf2048.messages == [msg1, msg2, leave, msg5, msg6, join, msg3, msg4]
def msgs_doublejoin(): join = MucOwnJoinMessage('join') msg1 = Message('1', 'd') msg2 = Message('2', 'f') join2 = MucOwnJoinMessage('join') return [join, msg1, msg2, join2]
def msgs_noleave(): join = MucOwnJoinMessage('join') msg3 = Message('3', 'd') msg4 = Message('4', 'f') return [join, msg3, msg4]