xref: /llvm-project/lldb/test/API/functionalities/gdb_remote_client/TestThreadInfoTrailingComma.py (revision 2238dcc39358353cac21df75c3c3286ab20b8f53)
1953dddedSTed Woodwardimport lldb
2953dddedSTed Woodwardfrom lldbsuite.test.lldbtest import *
3953dddedSTed Woodwardfrom lldbsuite.test.decorators import *
433c0f93fSPavel Labathfrom lldbsuite.test.gdbclientutils import *
533c0f93fSPavel Labathfrom lldbsuite.test.lldbgdbclient import GDBRemoteTestBase
6953dddedSTed Woodward
7953dddedSTed Woodward
8*2238dcc3SJonas Devlieghereclass TestThreadInfoTrailingComma(GDBRemoteTestBase):
9953dddedSTed Woodward    def test(self):
10953dddedSTed Woodward        class MyResponder(MockGDBServerResponder):
11953dddedSTed Woodward            def haltReason(self):
12953dddedSTed Woodward                return "T02thread:1"
13953dddedSTed Woodward
14953dddedSTed Woodward            def qfThreadInfo(self):
15953dddedSTed Woodward                return "m1,2,3,4,"
16953dddedSTed Woodward
17953dddedSTed Woodward        self.server.responder = MyResponder()
18*2238dcc3SJonas Devlieghere        target = self.dbg.CreateTarget("")
19953dddedSTed Woodward        if self.TraceOn():
20953dddedSTed Woodward            self.runCmd("log enable gdb-remote packets")
21*2238dcc3SJonas Devlieghere            self.addTearDownHook(lambda: self.runCmd("log disable gdb-remote packets"))
22953dddedSTed Woodward        process = self.connect(target)
23953dddedSTed Woodward        self.assertEqual(process.GetThreadAtIndex(0).GetThreadID(), 1)
24953dddedSTed Woodward        self.assertEqual(process.GetThreadAtIndex(1).GetThreadID(), 2)
25953dddedSTed Woodward        self.assertEqual(process.GetThreadAtIndex(2).GetThreadID(), 3)
26953dddedSTed Woodward        self.assertEqual(process.GetThreadAtIndex(3).GetThreadID(), 4)
27