1*99451b44SJordan Rupprecht""" 2*99451b44SJordan RupprechtFuzz tests an object after the default construction to make sure it does not crash lldb. 3*99451b44SJordan Rupprecht""" 4*99451b44SJordan Rupprecht 5*99451b44SJordan Rupprechtimport lldb 6*99451b44SJordan Rupprecht 7*99451b44SJordan Rupprecht 8*99451b44SJordan Rupprechtdef fuzz_obj(obj): 9*99451b44SJordan Rupprecht obj.GetError() 10*99451b44SJordan Rupprecht obj.GetID() 11*99451b44SJordan Rupprecht obj.GetName() 12*99451b44SJordan Rupprecht obj.GetTypeName() 13*99451b44SJordan Rupprecht obj.GetByteSize() 14*99451b44SJordan Rupprecht obj.IsInScope() 15*99451b44SJordan Rupprecht obj.GetFormat() 16*99451b44SJordan Rupprecht obj.SetFormat(lldb.eFormatBoolean) 17*99451b44SJordan Rupprecht obj.GetValue() 18*99451b44SJordan Rupprecht obj.GetValueType() 19*99451b44SJordan Rupprecht obj.GetValueDidChange() 20*99451b44SJordan Rupprecht obj.GetSummary() 21*99451b44SJordan Rupprecht obj.GetObjectDescription() 22*99451b44SJordan Rupprecht obj.GetLocation() 23*99451b44SJordan Rupprecht obj.SetValueFromCString("my_new_value") 24*99451b44SJordan Rupprecht obj.GetChildAtIndex(1) 25*99451b44SJordan Rupprecht obj.GetChildAtIndex(2, lldb.eNoDynamicValues, False) 26*99451b44SJordan Rupprecht obj.GetIndexOfChildWithName("my_first_child") 27*99451b44SJordan Rupprecht obj.GetChildMemberWithName("my_first_child") 28*99451b44SJordan Rupprecht obj.GetChildMemberWithName("my_first_child", lldb.eNoDynamicValues) 29*99451b44SJordan Rupprecht obj.GetNumChildren() 30*99451b44SJordan Rupprecht obj.GetOpaqueType() 31*99451b44SJordan Rupprecht obj.Dereference() 32*99451b44SJordan Rupprecht obj.TypeIsPointerType() 33*99451b44SJordan Rupprecht stream = lldb.SBStream() 34*99451b44SJordan Rupprecht obj.GetDescription(stream) 35*99451b44SJordan Rupprecht obj.GetExpressionPath(stream) 36*99451b44SJordan Rupprecht obj.GetExpressionPath(stream, True) 37*99451b44SJordan Rupprecht error = lldb.SBError() 38*99451b44SJordan Rupprecht obj.Watch(True, True, False, error) 39*99451b44SJordan Rupprecht obj.WatchPointee(True, False, True, error) 40*99451b44SJordan Rupprecht for child_val in obj: 41*99451b44SJordan Rupprecht s = str(child_val) 42*99451b44SJordan Rupprecht error = lldb.SBError() 43*99451b44SJordan Rupprecht obj.GetValueAsSigned(error, 0) 44*99451b44SJordan Rupprecht obj.GetValueAsUnsigned(error, 0) 45*99451b44SJordan Rupprecht obj.GetValueAsSigned(0) 46*99451b44SJordan Rupprecht obj.GetValueAsUnsigned(0) 47*99451b44SJordan Rupprecht obj.GetDynamicValue(lldb.eNoDynamicValues) 48*99451b44SJordan Rupprecht obj.GetStaticValue() 49*99451b44SJordan Rupprecht obj.IsDynamic() 50*99451b44SJordan Rupprecht invalid_type = lldb.SBType() 51*99451b44SJordan Rupprecht obj.CreateChildAtOffset("a", 12, invalid_type) 52*99451b44SJordan Rupprecht obj.Cast(invalid_type) 53*99451b44SJordan Rupprecht obj.CreateValueFromExpression("pt->x", "pt->x") 54*99451b44SJordan Rupprecht obj.CreateValueFromAddress("x", 0x123, invalid_type) 55*99451b44SJordan Rupprecht invalid_data = lldb.SBData() 56*99451b44SJordan Rupprecht obj.CreateValueFromData("x", invalid_data, invalid_type) 57*99451b44SJordan Rupprecht obj.GetValueForExpressionPath("[0]") 58*99451b44SJordan Rupprecht obj.AddressOf() 59*99451b44SJordan Rupprecht obj.GetLoadAddress() 60*99451b44SJordan Rupprecht obj.GetAddress() 61*99451b44SJordan Rupprecht obj.GetPointeeData(0, 1) 62*99451b44SJordan Rupprecht obj.GetData() 63*99451b44SJordan Rupprecht obj.GetTarget() 64*99451b44SJordan Rupprecht obj.GetProcess() 65*99451b44SJordan Rupprecht obj.GetThread() 66*99451b44SJordan Rupprecht obj.GetFrame() 67*99451b44SJordan Rupprecht obj.GetType() 68