Exemple #1
0
def test_frame_header():

    frame = Frame()

    try:
        frame.data = bytearray(Frame.FRAME_MAX_SIZE) + 1  # test over-byte
    except Exception:
        pass
    else:
        assert 0  # passed over byte

    frame.data = b'\xFF\xFF' + bytearray(Frame.FRAME_MIN_SIZE)

    frame.type = 0x10

    frame.id = 0x010CA0

    frame_bin = frame.get_frame_bin()

    assert frame_bin[0] << 16 | frame_bin[1] << 8 | frame_bin[2] << 0 == len(frame.data)

    # type is 0
    assert frame_bin[3] == 0x10

    assert frame_bin[5] << 24 | frame_bin[6] << 16 | frame_bin[7] << 8 | frame_bin[8] << 0 == 0x010CA0

    # check payload
    assert frame_bin[9:] == b'\xFF\xFF' + bytearray(Frame.FRAME_MIN_SIZE)