| """ |
| Test Debugger APIs. |
| """ |
| |
| import os |
| import lldb |
| |
| from lldbsuite.test.decorators import * |
| from lldbsuite.test.lldbtest import * |
| from lldbsuite.test import lldbutil |
| |
| |
| class DebuggerAPITestCase(TestBase): |
| |
| mydir = TestBase.compute_mydir(__file__) |
| |
| @add_test_categories(['pyapi']) |
| @no_debug_info_test |
| def test_debugger_api_boundary_condition(self): |
| """Exercise SBDebugger APIs with boundary conditions.""" |
| self.dbg.HandleCommand(None) |
| self.dbg.SetDefaultArchitecture(None) |
| self.dbg.GetScriptingLanguage(None) |
| self.dbg.CreateTarget(None) |
| self.dbg.CreateTarget(None, None, None, True, lldb.SBError()) |
| self.dbg.CreateTargetWithFileAndTargetTriple(None, None) |
| self.dbg.CreateTargetWithFileAndArch(None, None) |
| self.dbg.FindTargetWithFileAndArch(None, None) |
| self.dbg.SetInternalVariable(None, None, None) |
| self.dbg.GetInternalVariableValue(None, None) |
| # FIXME (filcab): We must first allow for the swig bindings to know if |
| # a Python callback is set. (Check python-typemaps.swig) |
| # self.dbg.SetLoggingCallback(None) |
| self.dbg.SetPrompt(None) |
| self.dbg.SetCurrentPlatform(None) |
| self.dbg.SetCurrentPlatformSDKRoot(None) |
| |
| @add_test_categories(['pyapi']) |
| def test_debugger_delete_invalid_target(self): |
| """SBDebugger.DeleteTarget() should not crash LLDB given and invalid target.""" |
| target = lldb.SBTarget() |
| self.assertFalse(target.IsValid()) |
| self.dbg.DeleteTarget(target) |