From b5491a6e60348ce04cdd5aef0fbc0238c1ff56a1 Mon Sep 17 00:00:00 2001 From: Johnny Chen Date: Fri, 24 Jun 2011 19:00:22 +0000 Subject: [PATCH] Add fuzz calls for SBBreakpointLocation. llvm-svn: 133810 --- .../TestDefaultConstructorForAPIObjects.py | 3 +++ .../sb_breakpointlocation.py | 27 +++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 lldb/test/python_api/default-constructor/sb_breakpointlocation.py diff --git a/lldb/test/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py b/lldb/test/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py index 570f98d16c8d..edd0317ae3cf 100644 --- a/lldb/test/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py +++ b/lldb/test/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py @@ -53,6 +53,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_breakpointlocation + sb_breakpointlocation.fuzz_obj(obj) @python_api_test def test_SBBroadcaster(self): diff --git a/lldb/test/python_api/default-constructor/sb_breakpointlocation.py b/lldb/test/python_api/default-constructor/sb_breakpointlocation.py new file mode 100644 index 000000000000..c86be7b38f23 --- /dev/null +++ b/lldb/test/python_api/default-constructor/sb_breakpointlocation.py @@ -0,0 +1,27 @@ +""" +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.GetLoadAddress() + obj.SetEnabled(True) + obj.IsEnabled() + 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.IsResolved() + obj.GetDescription(lldb.SBStream(), lldb.eDescriptionLevelVerbose) + breakpoint = obj.GetBreakpoint() + # Do fuzz testing on the breakpoint obj, it should not crash lldb. + import sb_breakpoint + sb_breakpoint.fuzz_obj(breakpoint)