199451b44SJordan Rupprecht""" 299451b44SJordan RupprechtTest lldb's quit command. 399451b44SJordan Rupprecht""" 499451b44SJordan Rupprecht 599451b44SJordan Rupprecht 699451b44SJordan Rupprechtimport lldb 799451b44SJordan Rupprechtfrom lldbsuite.test.decorators import * 899451b44SJordan Rupprechtfrom lldbsuite.test.lldbtest import * 999451b44SJordan Rupprechtfrom lldbsuite.test import lldbutil 1099451b44SJordan Rupprecht 1199451b44SJordan Rupprecht 1299451b44SJordan Rupprechtclass QuitCommandTestCase(TestBase): 1399451b44SJordan Rupprecht @no_debug_info_test 1499451b44SJordan Rupprecht def test_quit_exit_code_disallow(self): 1599451b44SJordan Rupprecht self.ci.AllowExitCodeOnQuit(False) 1699451b44SJordan Rupprecht self.expect( 1799451b44SJordan Rupprecht "quit 20", 1899451b44SJordan Rupprecht substrs=[ 19*2238dcc3SJonas Devlieghere "error: The current driver doesn't allow custom exit codes for the quit command" 20*2238dcc3SJonas Devlieghere ], 21*2238dcc3SJonas Devlieghere error=True, 22*2238dcc3SJonas Devlieghere ) 2399451b44SJordan Rupprecht self.assertFalse(self.ci.HasCustomQuitExitCode()) 2499451b44SJordan Rupprecht 2599451b44SJordan Rupprecht @no_debug_info_test 2699451b44SJordan Rupprecht def test_quit_exit_code_allow(self): 2799451b44SJordan Rupprecht self.ci.AllowExitCodeOnQuit(True) 2899451b44SJordan Rupprecht self.runCmd("quit 10", check=False) 2999451b44SJordan Rupprecht self.assertTrue(self.ci.HasCustomQuitExitCode()) 3099451b44SJordan Rupprecht self.assertEqual(self.ci.GetQuitStatus(), 10) 31