Files
clang-p2996/lldb/test/API/functionalities/thread/main_thread_exit/TestMainThreadExit.py
Dave Lee 4cc8f2a017 [lldb][tests] Automatically call compute_mydir (NFC)
Eliminate boilerplate of having each test manually assign to `mydir` by calling
`compute_mydir` in lldbtest.py.

Differential Revision: https://reviews.llvm.org/D128077
2022-06-17 14:34:49 -07:00

30 lines
901 B
Python

"""
Test handling of the situation where the main thread exits but the other threads
in the process keep running.
"""
import lldb
from lldbsuite.test.decorators import *
from lldbsuite.test.lldbtest import *
import lldbsuite.test.lldbutil as lldbutil
class ThreadExitTestCase(TestBase):
NO_DEBUG_INFO_TESTCASE = True
# Needs os-specific implementation in the inferior
@skipIf(oslist=no_match(["linux"]))
def test(self):
self.build()
lldbutil.run_to_source_breakpoint(self, "// break here",
lldb.SBFileSpec("main.cpp"))
# There should be one (non-main) thread left
self.assertEquals(self.process().GetNumThreads(), 1)
# Ensure we can evaluate_expressions in this state
self.expect_expr("call_me()", result_value="12345")
self.runCmd("continue")
self.assertEquals(self.process().GetExitStatus(), 47)