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.GetAddress()
10*99451b44SJordan Rupprecht    obj.GetLoadAddress()
11*99451b44SJordan Rupprecht    obj.SetEnabled(True)
12*99451b44SJordan Rupprecht    obj.IsEnabled()
13*99451b44SJordan Rupprecht    obj.SetCondition("i >= 10")
14*99451b44SJordan Rupprecht    obj.GetCondition()
15*99451b44SJordan Rupprecht    obj.SetThreadID(0)
16*99451b44SJordan Rupprecht    obj.GetThreadID()
17*99451b44SJordan Rupprecht    obj.SetThreadIndex(0)
18*99451b44SJordan Rupprecht    obj.GetThreadIndex()
19*99451b44SJordan Rupprecht    obj.SetThreadName("worker thread")
20*99451b44SJordan Rupprecht    obj.GetThreadName()
21*99451b44SJordan Rupprecht    obj.SetQueueName("my queue")
22*99451b44SJordan Rupprecht    obj.GetQueueName()
23*99451b44SJordan Rupprecht    obj.IsResolved()
24*99451b44SJordan Rupprecht    obj.GetDescription(lldb.SBStream(), lldb.eDescriptionLevelVerbose)
25*99451b44SJordan Rupprecht    breakpoint = obj.GetBreakpoint()
26*99451b44SJordan Rupprecht    # Do fuzz testing on the breakpoint obj, it should not crash lldb.
27*99451b44SJordan Rupprecht    import sb_breakpoint
28*99451b44SJordan Rupprecht    sb_breakpoint.fuzz_obj(breakpoint)
29