1
0
Files
h8-536-decoder/tests/test_emulator_report_queue_probe.py
2026-05-26 18:25:03 +10:00

27 lines
1.0 KiB
Python

import unittest
from h8536.emulator.report_queue_probe import (
build_expected_report_frame,
encode_report_header,
report_payload_selector,
)
class EmulatorReportQueueProbeTest(unittest.TestCase):
def test_report_word_0204_builds_observed_gated_active_frame(self):
self.assertEqual(encode_report_header(0x0204), (0x01, 0x00, 0x04))
self.assertEqual(report_payload_selector(0x0204), 0x0004)
self.assertEqual(build_expected_report_frame(0x0204, 0x0000), bytes.fromhex("01 00 04 00 00 5F"))
def test_report_word_0404_builds_observed_transition_frame(self):
self.assertEqual(encode_report_header(0x0404), (0x02, 0x00, 0x04))
self.assertEqual(report_payload_selector(0x0404), 0x0004)
self.assertEqual(build_expected_report_frame(0x0404, 0x0000), bytes.fromhex("02 00 04 00 00 5C"))
def test_payload_bytes_feed_frame_value_and_checksum(self):
self.assertEqual(build_expected_report_frame(0x0204, 0x1234), bytes.fromhex("01 00 04 12 34 79"))
if __name__ == "__main__":
unittest.main()