summaryrefslogtreecommitdiff
path: root/test/test_ui/test_types.py
diff options
context:
space:
mode:
authormathieui <mathieui@mathieui.net>2020-05-09 22:58:17 +0200
committermathieui <mathieui@mathieui.net>2020-05-09 22:58:17 +0200
commitf68fa1da5e2cccd396ee03eec12359ff905b7bc6 (patch)
tree135acd2d1ed2a4e7e382d9bd4f574ef6f54a023e /test/test_ui/test_types.py
parentd22b4b8c218cbbaee62002d751bd69bfe1d1deab (diff)
parentca85411af06c59ec63b9cc2c0b2b2f398da79e8a (diff)
downloadpoezio-f68fa1da5e2cccd396ee03eec12359ff905b7bc6.tar.gz
poezio-f68fa1da5e2cccd396ee03eec12359ff905b7bc6.tar.bz2
poezio-f68fa1da5e2cccd396ee03eec12359ff905b7bc6.tar.xz
poezio-f68fa1da5e2cccd396ee03eec12359ff905b7bc6.zip
Merge branch 'split-message-rendering' into 'master'
split message rendering See merge request poezio/poezio!48
Diffstat (limited to 'test/test_ui/test_types.py')
-rw-r--r--test/test_ui/test_types.py126
1 files changed, 126 insertions, 0 deletions
diff --git a/test/test_ui/test_types.py b/test/test_ui/test_types.py
new file mode 100644
index 00000000..e4c6c010
--- /dev/null
+++ b/test/test_ui/test_types.py
@@ -0,0 +1,126 @@
+import pytest
+from datetime import datetime
+
+from poezio.ui.types import BaseMessage, Message, XMLLog
+
+
+def test_create_message():
+ now = datetime.now()
+ msg = Message(
+ txt="coucou",
+ nickname="toto",
+ )
+ assert now < msg.time < datetime.now()
+
+ msg = Message(
+ txt="coucou",
+ nickname="toto",
+ time=now,
+ )
+ assert msg.time == now
+
+
+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_no_nick():
+ msg = Message(
+ txt="coucou",
+ nickname="",
+ )
+ example = "10:10:10 "
+ 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_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_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_repr_works():
+ msg1 = Message(
+ txt="coucou",
+ nickname="toto",
+ revisions=250,
+ )
+ msg2 = Message(
+ txt="coucou",
+ nickname="toto",
+ old_message=msg1
+ )
+
+ assert repr(msg2) is not None
+
+def test_xmllog_offset():
+ msg = XMLLog(
+ txt='toto',
+ incoming=True,
+ )
+ example = '10:10:10 IN '
+ assert msg.compute_offset(True, 10) == len(example)
+
+ msg = XMLLog(
+ txt='toto',
+ incoming=False,
+ )
+ example = '10:10:10 OUT '
+ assert msg.compute_offset(True, 10) == len(example)
+
+def test_basemessage_offset():
+ msg = BaseMessage(
+ txt='coucou',
+ )
+ example = '10:10:10 '
+ assert msg.compute_offset(True, 10) == len(example)