2011-06-28 07:53:55 +08:00
|
|
|
"""
|
|
|
|
Fuzz tests an object after the default construction to make sure it does not crash lldb.
|
|
|
|
"""
|
|
|
|
|
|
|
|
import sys
|
|
|
|
import lldb
|
|
|
|
|
|
|
|
def fuzz_obj(obj):
|
|
|
|
obj.GetFrameID()
|
|
|
|
obj.GetPC()
|
|
|
|
obj.SetPC(0xffffffff)
|
|
|
|
obj.GetSP()
|
|
|
|
obj.GetFP()
|
|
|
|
obj.GetPCAddress()
|
|
|
|
obj.GetSymbolContext(0)
|
|
|
|
obj.GetModule()
|
|
|
|
obj.GetCompileUnit()
|
|
|
|
obj.GetFunction()
|
|
|
|
obj.GetSymbol()
|
|
|
|
obj.GetBlock()
|
|
|
|
obj.GetFunctionName()
|
|
|
|
obj.IsInlined()
|
|
|
|
obj.EvaluateExpression("x + y")
|
|
|
|
obj.EvaluateExpression("x + y", lldb.eDynamicCanRunTarget)
|
|
|
|
obj.GetFrameBlock()
|
|
|
|
obj.GetLineEntry()
|
|
|
|
obj.GetThread()
|
|
|
|
obj.Disassemble()
|
|
|
|
obj.GetVariables(True, True, True, True)
|
|
|
|
obj.GetVariables(True, True, True, False, lldb.eDynamicCanRunTarget)
|
|
|
|
obj.GetRegisters()
|
|
|
|
obj.FindVariable("my_var")
|
|
|
|
obj.FindVariable("my_var", lldb.eDynamicCanRunTarget)
|
2011-09-24 09:02:22 +08:00
|
|
|
obj.FindValue("your_var", lldb.eValueTypeVariableGlobal)
|
|
|
|
obj.FindValue("your_var", lldb.eValueTypeVariableStatic, lldb.eDynamicCanRunTarget)
|
2011-06-28 07:53:55 +08:00
|
|
|
obj.GetDescription(lldb.SBStream())
|
2011-06-29 07:29:14 +08:00
|
|
|
obj.Clear()
|