199451b44SJordan Rupprecht 299451b44SJordan Rupprecht# lldb test suite imports 399451b44SJordan Rupprechtfrom lldbsuite.test.decorators import * 499451b44SJordan Rupprechtfrom lldbsuite.test.lldbtest import TestBase 599451b44SJordan Rupprecht 699451b44SJordan Rupprecht# gdb-remote-specific imports 799451b44SJordan Rupprechtimport lldbgdbserverutils 899451b44SJordan Rupprechtfrom gdbremote_testcase import GdbRemoteTestCaseBase 999451b44SJordan Rupprecht 1099451b44SJordan Rupprecht 1199451b44SJordan Rupprechtclass TestGdbRemoteExitCode(GdbRemoteTestCaseBase): 1299451b44SJordan Rupprecht 13*0a8a2453SPavel Labath def _test_inferior_exit(self, retval): 1499451b44SJordan Rupprecht self.build() 1599451b44SJordan Rupprecht 16ce279e0cSPavel Labath procs = self.prep_debug_monitor_and_inferior( 17*0a8a2453SPavel Labath inferior_args=["retval:%d" % retval]) 1899451b44SJordan Rupprecht 1999451b44SJordan Rupprecht self.test_sequence.add_log_lines( 2099451b44SJordan Rupprecht ["read packet: $vCont;c#a8", 21*0a8a2453SPavel Labath "send packet: $W{0:02x}#00".format(retval)], 2299451b44SJordan Rupprecht True) 2399451b44SJordan Rupprecht 2499451b44SJordan Rupprecht self.expect_gdbremote_sequence() 2599451b44SJordan Rupprecht 26*0a8a2453SPavel Labath def test_inferior_exit_0(self): 27*0a8a2453SPavel Labath self._test_inferior_exit(0) 2899451b44SJordan Rupprecht 29*0a8a2453SPavel Labath def test_inferior_exit_42(self): 30*0a8a2453SPavel Labath self._test_inferior_exit(42) 31