示例#1
0
def test_parse_message_standard_message_received():
    message, expected = parse_message(
        bytearray(b'\x02\x50\x0a\x0b\x0c\x01\x02\x03\xe0\x0a\x0b'), )

    assert message == IncomingMessage(
        command_code=CommandCode.standard_message_received,
        body=b'\x0a\x0b\x0c\x01\x02\x03\xe0\x0a\x0b',
    )
    assert expected == 2
示例#2
0
def test_parse_message_standard_message_received_padding():
    buffer = bytearray(b'\xff\x02\x50\x0a\x0b\x0c\x01\x02\x03\xe0\x0a\x0b\x55')
    message, expected = parse_message(buffer)

    assert message == IncomingMessage(
        command_code=CommandCode.standard_message_received,
        body=b'\x0a\x0b\x0c\x01\x02\x03\xe0\x0a\x0b',
    )
    assert expected == 1
    assert buffer == b'\x55'
示例#3
0
def test_parse_message_invalid():
    assert parse_message(bytearray(b'\x01\x03')) == (None, 2)
示例#4
0
def test_parse_message_incomplete_standard_message_received():
    assert parse_message(bytearray(b'\x02\x50\x0a')) == (None, 8)
示例#5
0
def test_parse_message_unknown_command_code():
    assert parse_message(bytearray(b'\x02\x00')) == (None, 2)
示例#6
0
def test_parse_message_too_short():
    assert parse_message(bytearray(b'\x02')) == (None, 1)