Add fuzz calls for SBBroadcaster.

llvm-svn: 133837
This commit is contained in:
Johnny Chen 2011-06-24 22:53:12 +00:00
parent cbdfe81171
commit 57e34b21db
2 changed files with 22 additions and 0 deletions

View File

@ -63,6 +63,9 @@ class APIDefaultConstructorTestCase(TestBase):
if self.TraceOn():
print obj
self.assertFalse(obj)
# Do fuzz testing on the invalid obj, it should not crash lldb.
import sb_broadcaster
sb_broadcaster.fuzz_obj(obj)
@python_api_test
def test_SBCommandReturnObject(self):

View File

@ -0,0 +1,19 @@
"""
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.BroadcastEventByType(lldb.eBreakpointEventTypeInvalidType, True)
obj.BroadcastEvent(lldb.SBEvent(), False)
listener = lldb.SBListener("fuzz_testing")
obj.AddInitialEventsToListener(listener, 0xffffffff)
obj.AddInitialEventsToListener(listener, 0)
obj.AddListener(listener, 0xffffffff)
obj.AddListener(listener, 0)
obj.GetName()
obj.EventTypeHasListeners(0)
obj.RemoveListener(listener, 0xffffffff)
obj.RemoveListener(listener, 0)