summaryrefslogtreecommitdiffstats
path: root/lldb/test/python_api/default-constructor
diff options
context:
space:
mode:
authorJohnny Chen <johnny.chen@apple.com>2011-06-24 18:49:27 +0000
committerJohnny Chen <johnny.chen@apple.com>2011-06-24 18:49:27 +0000
commit1bd3d731d96e70eb0da46c2b06881c04d71afe53 (patch)
tree9dc48a9c1038497e0a544fe25728417f6f9ad466 /lldb/test/python_api/default-constructor
parent3c9ede62f69a02223622e18877cfb44456cd419e (diff)
downloadbcm5719-llvm-1bd3d731d96e70eb0da46c2b06881c04d71afe53.tar.gz
bcm5719-llvm-1bd3d731d96e70eb0da46c2b06881c04d71afe53.zip
Add fuzz calls for SBBreakpoint.
llvm-svn: 133809
Diffstat (limited to 'lldb/test/python_api/default-constructor')
-rw-r--r--lldb/test/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py8
-rw-r--r--lldb/test/python_api/default-constructor/sb_breakpoint.py33
2 files changed, 39 insertions, 2 deletions
diff --git a/lldb/test/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py b/lldb/test/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py
index b69e50da803..570f98d16c8 100644
--- a/lldb/test/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py
+++ b/lldb/test/python_api/default-constructor/TestDefaultConstructorForAPIObjects.py
@@ -2,8 +2,9 @@
Test lldb Python API object's default constructor and make sure it is invalid
after initial construction.
-There are three exceptions to the above general rules, though; the API objects are
-SBCommadnReturnObject, SBStream, and SBSymbolContextList.
+There are three exceptions to the above general rules, though; API objects
+SBCommadnReturnObject, SBStream, and SBSymbolContextList, are all valid objects
+after default construction.
"""
import os, time
@@ -42,6 +43,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_breakpoint
+ sb_breakpoint.fuzz_obj(obj)
@python_api_test
def test_SBBreakpointLocation(self):
diff --git a/lldb/test/python_api/default-constructor/sb_breakpoint.py b/lldb/test/python_api/default-constructor/sb_breakpoint.py
new file mode 100644
index 00000000000..5ea5c62ad3e
--- /dev/null
+++ b/lldb/test/python_api/default-constructor/sb_breakpoint.py
@@ -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())
OpenPOWER on IntegriCloud