xref: /llvm-project/lldb/test/API/python_api/default-constructor/sb_debugger.py (revision 2238dcc39358353cac21df75c3c3286ab20b8f53)
199451b44SJordan Rupprecht"""
299451b44SJordan RupprechtFuzz tests an object after the default construction to make sure it does not crash lldb.
399451b44SJordan Rupprecht"""
499451b44SJordan Rupprecht
599451b44SJordan Rupprechtimport lldb
699451b44SJordan Rupprecht
799451b44SJordan Rupprecht
899451b44SJordan Rupprechtdef fuzz_obj(obj):
999451b44SJordan Rupprecht    obj.SetAsync(True)
1099451b44SJordan Rupprecht    obj.SetAsync(False)
1199451b44SJordan Rupprecht    obj.GetAsync()
1299451b44SJordan Rupprecht    obj.SkipLLDBInitFiles(True)
1399451b44SJordan Rupprecht    obj.SetInputFileHandle(None, True)
1499451b44SJordan Rupprecht    obj.SetOutputFileHandle(None, True)
1599451b44SJordan Rupprecht    obj.SetErrorFileHandle(None, True)
16f23b829aSLevon Ter-Grigoryan    obj.SetInputString("")
1799451b44SJordan Rupprecht    obj.GetInputFileHandle()
1899451b44SJordan Rupprecht    obj.GetOutputFileHandle()
1999451b44SJordan Rupprecht    obj.GetErrorFileHandle()
2099451b44SJordan Rupprecht    obj.GetCommandInterpreter()
2199451b44SJordan Rupprecht    obj.HandleCommand("nothing here")
2299451b44SJordan Rupprecht    listener = obj.GetListener()
2399451b44SJordan Rupprecht    try:
2499451b44SJordan Rupprecht        obj.HandleProcessEvent(lldb.SBProcess(), lldb.SBEvent(), None, None)
2599451b44SJordan Rupprecht    except Exception:
2699451b44SJordan Rupprecht        pass
2799451b44SJordan Rupprecht    obj.CreateTargetWithFileAndTargetTriple("a.out", "A-B-C")
2899451b44SJordan Rupprecht    obj.CreateTargetWithFileAndArch("b.out", "arm")
2999451b44SJordan Rupprecht    obj.CreateTarget("c.out")
3099451b44SJordan Rupprecht    obj.DeleteTarget(lldb.SBTarget())
31*2238dcc3SJonas Devlieghere    obj.GetTargetAtIndex(0xFFFFFFFF)
3299451b44SJordan Rupprecht    obj.FindTargetWithProcessID(0)
3399451b44SJordan Rupprecht    obj.FindTargetWithFileAndArch("a.out", "arm")
3499451b44SJordan Rupprecht    obj.GetNumTargets()
3599451b44SJordan Rupprecht    obj.GetSelectedTarget()
3699451b44SJordan Rupprecht    obj.GetNumPlatforms()
37*2238dcc3SJonas Devlieghere    obj.GetPlatformAtIndex(0xFFFFFFFF)
3899451b44SJordan Rupprecht    obj.GetNumAvailablePlatforms()
39*2238dcc3SJonas Devlieghere    obj.GetAvailablePlatformInfoAtIndex(0xFFFFFFFF)
4099451b44SJordan Rupprecht    obj.GetSourceManager()
4199451b44SJordan Rupprecht    obj.SetSelectedTarget(lldb.SBTarget())
4299451b44SJordan Rupprecht    obj.SetCurrentPlatformSDKRoot("tmp/sdk-root")
4399451b44SJordan Rupprecht    try:
4499451b44SJordan Rupprecht        obj.DispatchInput(None)
4599451b44SJordan Rupprecht    except Exception:
4699451b44SJordan Rupprecht        pass
4799451b44SJordan Rupprecht    obj.DispatchInputInterrupt()
4899451b44SJordan Rupprecht    obj.DispatchInputEndOfFile()
4999451b44SJordan Rupprecht    obj.GetInstanceName()
5099451b44SJordan Rupprecht    obj.GetDescription(lldb.SBStream())
5199451b44SJordan Rupprecht    obj.GetTerminalWidth()
52*2238dcc3SJonas Devlieghere    obj.SetTerminalWidth(0xFFFFFFFF)
5399451b44SJordan Rupprecht    obj.GetID()
5499451b44SJordan Rupprecht    obj.GetPrompt()
5599451b44SJordan Rupprecht    obj.SetPrompt("Hi, Mom!")
5699451b44SJordan Rupprecht    obj.GetScriptLanguage()
5799451b44SJordan Rupprecht    obj.SetScriptLanguage(lldb.eScriptLanguageNone)
5899451b44SJordan Rupprecht    obj.SetScriptLanguage(lldb.eScriptLanguagePython)
5999451b44SJordan Rupprecht    obj.GetCloseInputOnEOF()
6099451b44SJordan Rupprecht    obj.SetCloseInputOnEOF(True)
6199451b44SJordan Rupprecht    obj.SetCloseInputOnEOF(False)
6299451b44SJordan Rupprecht    obj.Clear()
6399451b44SJordan Rupprecht    for target in obj:
6499451b44SJordan Rupprecht        s = str(target)
65