22
33import pytest
44
5- from deebot_client .events import MinorMapEvent
5+ from deebot_client .events import MapTraceEvent , MinorMapEvent
66from deebot_client .message import HandlingState
7- from deebot_client .messages .xml import MapP
7+ from deebot_client .messages .xml import MapP , Trace
88from tests .messages import assert_message , assert_message_failure
99
1010
@@ -29,3 +29,28 @@ def test_MapP(pid: int, data: str) -> None:
2929)
3030def test_MapP_error (xml_message : str ) -> None :
3131 assert_message_failure (MapP , xml_message , HandlingState .ANALYSE_LOGGED )
32+
33+
34+ @pytest .mark .parametrize (("tf" , "tt" , "tr" ), [(13 , 42 , "base64data" )])
35+ def test_Trace (tf : int , tt : int , tr : str ) -> None :
36+ xml_message = f"<ctl td='trace' trid='631369' tf='{ tf } ' tt='{ tt } ' tr='{ tr } '/>"
37+ assert_message (
38+ Trace ,
39+ xml_message ,
40+ MapTraceEvent (start = tf , total = tt , data = tr ),
41+ )
42+
43+
44+ @pytest .mark .parametrize (
45+ "xml_message" ,
46+ {
47+ "<ctl td='trace' trid='631369' tt='17' tr='XQAABAAKAAAAAG0/wEAAA2cAS5AAAA=='/>" ,
48+ "<ctl td='trace' trid='631369' tf='XXX' tt='17' tr='XQAABAAKAAAAAG0/wEAAA2cAS5AAAA=='/>" ,
49+ "<ctl td='trace' trid='631369' tf='16' tr='XQAABAAKAAAAAG0/wEAAA2cAS5AAAA=='/>" ,
50+ "<ctl td='trace' trid='631369' tf='16' tt='XXX' tr='XQAABAAKAAAAAG0/wEAAA2cAS5AAAA=='/>" ,
51+ "<ctl td='trace' trid='631369' tf='16' tt='16' />" ,
52+ "<ctl td='trace' trid='631369' />" ,
53+ },
54+ )
55+ def test_Trace_error (xml_message : str ) -> None :
56+ assert_message_failure (MapP , xml_message , HandlingState .ANALYSE_LOGGED )
0 commit comments