def test_message_offset_simple(): msg = Message( txt="coucou", nickname="toto", ) example = "10:10:10 toto> " assert msg.compute_offset(True, 10) == len(example) msg = Message( txt="coucou", nickname="toto", history=True, ) example = "2019:09:01 10:10:10 toto> " assert msg.compute_offset(True, 10) == len(example)
def test_message_offset_revisions(): msg = Message( txt="coucou", nickname="toto", revisions=3, ) example = "10:10:10 toto3> " assert msg.compute_offset(True, 10) == len(example) msg = Message( txt="coucou", nickname="toto", revisions=250, ) example = "10:10:10 toto250> " assert msg.compute_offset(True, 10) == len(example)
def test_message_offset_me(): msg = Message( txt="/me coucou", nickname="toto", ) example = "10:10:10 * toto " assert msg.compute_offset(True, 10) == len(example)
def test_message_offset_ack(): msg = Message( txt="coucou", nickname="toto", ack=1, ) example = "10:10:10 V toto> " assert msg.compute_offset(True, 10) == len(example) msg = Message( txt="coucou", nickname="toto", ack=-1, ) example = "10:10:10 X toto> " assert msg.compute_offset(True, 10) == len(example)
def test_message_offset_no_nick(): msg = Message( txt="coucou", nickname="", ) example = "10:10:10 " assert msg.compute_offset(True, 10) == len(example)
def build_message(msg: Message, width: int, timestamp: bool, nick_size: int = 10) -> List[Line]: """ Build a list of lines from this message. """ txt = msg.txt if not txt: return [] offset = msg.compute_offset(timestamp, nick_size) lines = poopt.cut_text(txt, width - offset - 1) generated_lines = generate_lines(lines, msg, default_color='') return generated_lines