2024-08-01 11:07:52 +09:00
|
|
|
import time
|
|
|
|
|
from unittest import TestCase
|
|
|
|
|
|
2024-08-15 02:40:06 +09:00
|
|
|
from sim.message import InnerMessage, UniqueInnerMessageBuilder
|
2024-08-01 11:07:52 +09:00
|
|
|
|
|
|
|
|
|
|
|
|
|
class TestMessage(TestCase):
|
2024-08-15 02:40:06 +09:00
|
|
|
def test_inner_message_serde(self):
|
|
|
|
|
msg = InnerMessage(time.time(), 10, b"hello")
|
2024-08-01 11:07:52 +09:00
|
|
|
serialized = bytes(msg)
|
2024-08-15 02:40:06 +09:00
|
|
|
deserialized = InnerMessage.from_bytes(serialized)
|
2024-08-01 11:07:52 +09:00
|
|
|
self.assertEqual(msg, deserialized)
|
|
|
|
|
|
|
|
|
|
|
2024-08-15 02:40:06 +09:00
|
|
|
class TestUniqueInnerMessageBuilder(TestCase):
|
2024-08-01 11:07:52 +09:00
|
|
|
def test_uniqueness(self):
|
2024-08-15 02:40:06 +09:00
|
|
|
builder = UniqueInnerMessageBuilder()
|
2024-08-01 11:07:52 +09:00
|
|
|
msg1 = builder.next(time.time(), b"hello")
|
|
|
|
|
msg2 = builder.next(time.time(), b"hello")
|
|
|
|
|
self.assertEqual(0, msg1.id)
|
|
|
|
|
self.assertEqual(1, msg2.id)
|
|
|
|
|
self.assertNotEqual(msg1, msg2)
|