1*99451b44SJordan Rupprechtimport gdbremote_testcase 2*99451b44SJordan Rupprechtfrom lldbsuite.test.decorators import * 3*99451b44SJordan Rupprechtfrom lldbsuite.test.lldbtest import * 4*99451b44SJordan Rupprechtfrom lldbsuite.test import lldbutil 5*99451b44SJordan Rupprecht 6*99451b44SJordan Rupprechtclass TestGdbRemoteThreadName(gdbremote_testcase.GdbRemoteTestCaseBase): 7*99451b44SJordan Rupprecht 8*99451b44SJordan Rupprecht def run_and_check_name(self, expected_name): 9*99451b44SJordan Rupprecht self.test_sequence.add_log_lines(["read packet: $vCont;c#a8", 10*99451b44SJordan Rupprecht {"direction": "send", 11*99451b44SJordan Rupprecht "regex": 12*99451b44SJordan Rupprecht r"^\$T([0-9a-fA-F]{2})([^#]+)#[0-9a-fA-F]{2}$", 13*99451b44SJordan Rupprecht "capture": { 14*99451b44SJordan Rupprecht 1: "signal", 15*99451b44SJordan Rupprecht 2: "key_vals_text"}}, 16*99451b44SJordan Rupprecht ], 17*99451b44SJordan Rupprecht True) 18*99451b44SJordan Rupprecht 19*99451b44SJordan Rupprecht context = self.expect_gdbremote_sequence() 20*99451b44SJordan Rupprecht self.assertIsNotNone(context) 21*99451b44SJordan Rupprecht 22*99451b44SJordan Rupprecht sigint = lldbutil.get_signal_number("SIGINT") 23*99451b44SJordan Rupprecht self.assertEqual(sigint, int(context.get("signal"), 16)) 24*99451b44SJordan Rupprecht kv_dict = self.parse_key_val_dict(context.get("key_vals_text")) 25*99451b44SJordan Rupprecht self.assertEqual(expected_name, kv_dict.get("name")) 26*99451b44SJordan Rupprecht 27*99451b44SJordan Rupprecht @skipIfWindows # the test is not updated for Windows. 28*99451b44SJordan Rupprecht def test(self): 29*99451b44SJordan Rupprecht """ Make sure lldb-server can retrieve inferior thread name""" 30*99451b44SJordan Rupprecht self.build() 31*99451b44SJordan Rupprecht self.set_inferior_startup_launch() 32*99451b44SJordan Rupprecht procs = self.prep_debug_monitor_and_inferior() 33*99451b44SJordan Rupprecht 34*99451b44SJordan Rupprecht self.run_and_check_name("hello world") 35*99451b44SJordan Rupprecht self.run_and_check_name("goodbye world") 36