import unittest from modbus_codec import encode_registers class ModbusCodecTest(unittest.TestCase): def test_encode_int16(self): self.assertEqual(encode_registers(1, "int16"), [1]) self.assertEqual(encode_registers(-1, "int16"), [0xFFFF]) def test_encode_int32_abcd(self): self.assertEqual(encode_registers(0x12345678, "int32"), [0x1234, 0x5678]) def test_encode_float32_abcd(self): self.assertEqual(encode_registers(1.0, "float32"), [0x3F80, 0x0000]) def test_encode_invalid_type(self): with self.assertRaises(ValueError): encode_registers(1, "uint16") if __name__ == "__main__": unittest.main()