Summary:
The error message from the construct `assertTrue(a == b, "msg") ` are nearly always completely useless for actually debugging the issue.
This patch is just replacing this construct (and similar ones like `assertTrue(a != b, ...)` with the proper call to assertEqual or assertNotEquals.
This patch was mostly written by a shell script with some manual verification afterwards:
```
lang=python
import sys
def sanitize_line(line):
if line.strip().startswith("self.assertTrue(") and " == " in line:
line = line.replace("self.assertTrue(", "self.assertEquals(")
line = line.replace(" == ", ", ", 1)
if line.strip().startswith("self.assertTrue(") and " != " in line:
line = line.replace("self.assertTrue(", "self.assertNotEqual(")
line = line.replace(" != ", ", ", 1)
return line
for a in sys.argv[1:]:
with open(a, "r") as f:
lines = f.readlines()
with open(a, "w") as f:
for line in lines:
f.write(sanitize_line(line))
```
Reviewers: labath, JDevlieghere
Reviewed By: labath
Subscribers: abidh, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D74475
43 lines
1.3 KiB
Python
43 lines
1.3 KiB
Python
"""
|
|
Test that breakpoints set on a bad address say they are bad.
|
|
"""
|
|
|
|
|
|
|
|
import lldb
|
|
import lldbsuite.test.lldbutil as lldbutil
|
|
from lldbsuite.test.lldbtest import *
|
|
|
|
|
|
class BadAddressBreakpointTestCase(TestBase):
|
|
|
|
mydir = TestBase.compute_mydir(__file__)
|
|
|
|
NO_DEBUG_INFO_TESTCASE = True
|
|
|
|
def test_bad_address_breakpoints(self):
|
|
"""Test that breakpoints set on a bad address say they are bad."""
|
|
self.build()
|
|
self.address_breakpoints()
|
|
|
|
def address_breakpoints(self):
|
|
"""Test that breakpoints set on a bad address say they are bad."""
|
|
target, process, thread, bkpt = \
|
|
lldbutil.run_to_source_breakpoint(self,
|
|
"Set a breakpoint here",
|
|
lldb.SBFileSpec("main.c"))
|
|
|
|
# Now see if we can read from 0. If I can't do that, I don't
|
|
# have a good way to know what an illegal address is...
|
|
error = lldb.SBError()
|
|
|
|
ptr = process.ReadPointerFromMemory(0x0, error)
|
|
|
|
if not error.Success():
|
|
bkpt = target.BreakpointCreateByAddress(0x0)
|
|
for bp_loc in bkpt:
|
|
self.assertEquals(bp_loc.IsResolved(), False)
|
|
else:
|
|
self.fail(
|
|
"Could not find an illegal address at which to set a bad breakpoint.")
|