| """ | |
| Test that the target.process.thread.max-backtrace-depth setting works. | |
| """ | |
| import lldb | |
| from lldbsuite.test.decorators import * | |
| from lldbsuite.test.lldbtest import * | |
| from lldbsuite.test import lldbutil | |
| class BacktraceLimitSettingTest(TestBase): | |
| NO_DEBUG_INFO_TESTCASE = True | |
| def test_backtrace_depth(self): | |
| """Test that the max-backtrace-depth setting limits backtraces.""" | |
| self.build() | |
| self.main_source_file = lldb.SBFileSpec("main.cpp") | |
| (target, process, thread, bkpt) = lldbutil.run_to_source_breakpoint( | |
| self, "Set a breakpoint here", self.main_source_file | |
| ) | |
| interp = self.dbg.GetCommandInterpreter() | |
| result = lldb.SBCommandReturnObject() | |
| interp.HandleCommand( | |
| "settings set target.process.thread.max-backtrace-depth 30", result | |
| ) | |
| self.assertTrue(result.Succeeded()) | |
| self.assertEqual(30, thread.GetNumFrames()) |