|
|
@@ -10,8 +10,9 @@ from modules.nextion_display import NextionDisplay, parse_nextion_events
|
|
|
|
|
|
def test_parse_button_event():
|
|
|
data = bytes([0x65, 0x00, 0x05, 0x01, 0xFF, 0xFF, 0xFF])
|
|
|
- events = parse_nextion_events(data)
|
|
|
+ events, remaining = parse_nextion_events(data)
|
|
|
assert events == [{'type': 'button', 'page': 0, 'comp': 5, 'event': 1}]
|
|
|
+ assert remaining == b''
|
|
|
|
|
|
|
|
|
def test_parse_multiple_events():
|
|
|
@@ -19,9 +20,17 @@ def test_parse_multiple_events():
|
|
|
bytes([0x65, 0x00, 0x05, 0x01, 0xFF, 0xFF, 0xFF]) +
|
|
|
bytes([0x65, 0x00, 0x06, 0x01, 0xFF, 0xFF, 0xFF])
|
|
|
)
|
|
|
- events = parse_nextion_events(data)
|
|
|
+ events, remaining = parse_nextion_events(data)
|
|
|
assert len(events) == 2
|
|
|
assert events[1] == {'type': 'button', 'page': 0, 'comp': 6, 'event': 1}
|
|
|
+ assert remaining == b''
|
|
|
+
|
|
|
+
|
|
|
+def test_parse_event_with_trailing_partial_bytes():
|
|
|
+ data = bytes([0x65, 0x00, 0x05, 0x01, 0xFF, 0xFF, 0xFF, 0x65])
|
|
|
+ events, remaining = parse_nextion_events(data)
|
|
|
+ assert events == [{'type': 'button', 'page': 0, 'comp': 5, 'event': 1}]
|
|
|
+ assert remaining == bytes([0x65])
|
|
|
|
|
|
|
|
|
def test_encode_nextion_cmd():
|