forked from OSchip/llvm-project
parent
3c9ede62f6
commit
1bd3d731d9
|
@ -2,8 +2,9 @@
|
||||||
Test lldb Python API object's default constructor and make sure it is invalid
|
Test lldb Python API object's default constructor and make sure it is invalid
|
||||||
after initial construction.
|
after initial construction.
|
||||||
|
|
||||||
There are three exceptions to the above general rules, though; the API objects are
|
There are three exceptions to the above general rules, though; API objects
|
||||||
SBCommadnReturnObject, SBStream, and SBSymbolContextList.
|
SBCommadnReturnObject, SBStream, and SBSymbolContextList, are all valid objects
|
||||||
|
after default construction.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
import os, time
|
import os, time
|
||||||
|
@ -42,6 +43,9 @@ class APIDefaultConstructorTestCase(TestBase):
|
||||||
if self.TraceOn():
|
if self.TraceOn():
|
||||||
print obj
|
print obj
|
||||||
self.assertFalse(obj)
|
self.assertFalse(obj)
|
||||||
|
# Do fuzz testing on the invalid obj, it should not crash lldb.
|
||||||
|
import sb_breakpoint
|
||||||
|
sb_breakpoint.fuzz_obj(obj)
|
||||||
|
|
||||||
@python_api_test
|
@python_api_test
|
||||||
def test_SBBreakpointLocation(self):
|
def test_SBBreakpointLocation(self):
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
"""
|
||||||
|
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.GetID()
|
||||||
|
obj.ClearAllBreakpointSites()
|
||||||
|
obj.FindLocationByAddress(sys.maxint)
|
||||||
|
obj.FindLocationIDByAddress(sys.maxint)
|
||||||
|
obj.FindLocationByID(0)
|
||||||
|
obj.GetLocationAtIndex(0)
|
||||||
|
obj.SetEnabled(True)
|
||||||
|
obj.IsEnabled()
|
||||||
|
obj.GetHitCount()
|
||||||
|
obj.SetIgnoreCount(1)
|
||||||
|
obj.GetIgnoreCount()
|
||||||
|
obj.SetCondition("i >= 10")
|
||||||
|
obj.GetCondition()
|
||||||
|
obj.SetThreadID(0)
|
||||||
|
obj.GetThreadID()
|
||||||
|
obj.SetThreadIndex(0)
|
||||||
|
obj.GetThreadIndex()
|
||||||
|
obj.SetThreadName("worker thread")
|
||||||
|
obj.GetThreadName()
|
||||||
|
obj.SetQueueName("my queue")
|
||||||
|
obj.GetQueueName()
|
||||||
|
obj.SetCallback(None, None)
|
||||||
|
obj.GetNumResolvedLocations()
|
||||||
|
obj.GetNumLocations()
|
||||||
|
obj.GetDescription(lldb.SBStream())
|
Loading…
Reference in New Issue