This revision was automatically updated to reflect the committed changes.
JDevlieghere marked an inline comment as done.
Closed by commit rG0f821339dad1: [lldb] Add assertStopReason helper function
(authored by JDevlieghere).
Herald added a project: LLDB.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D131083/new/
https://reviews.llvm.org/D131083
Files:
lldb/docs/resources/test.rst
lldb/packages/Python/lldbsuite/test/lldbtest.py
lldb/packages/Python/lldbsuite/test/lldbutil.py
lldb/test/API/commands/process/continue_to_bkpt/TestContinueToBkpts.py
lldb/test/API/commands/watchpoints/multiple_hits/TestMultipleHits.py
lldb/test/API/commands/watchpoints/step_over_watchpoint/TestStepOverWatchpoint.py
lldb/test/API/commands/watchpoints/watchpoint_count/TestWatchpointCount.py
lldb/test/API/commands/watchpoints/watchpoint_disable/TestWatchpointDisable.py
lldb/test/API/functionalities/breakpoint/breakpoint_on_lambda_capture/TestBreakOnLambdaCapture.py
lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
lldb/test/API/functionalities/breakpoint/two_hits_one_actual/TestTwoHitsOneActual.py
lldb/test/API/functionalities/gdb_remote_client/TestRecognizeBreakpoint.py
lldb/test/API/functionalities/mtc/simple/TestMTCSimple.py
lldb/test/API/functionalities/postmortem/elf-core/gcore/TestGCore.py
lldb/test/API/functionalities/postmortem/elf-core/thread_crash/TestLinuxCoreThreads.py
lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
lldb/test/API/functionalities/postmortem/minidump/TestMiniDump.py
lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
lldb/test/API/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py
lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
lldb/test/API/functionalities/return-value/TestReturnValue.py
lldb/test/API/functionalities/scripted_process/TestScriptedProcess.py
lldb/test/API/functionalities/stop-on-sharedlibrary-load/TestStopOnSharedlibraryEvents.py
lldb/test/API/functionalities/thread/create_during_step/TestCreateDuringStep.py
lldb/test/API/functionalities/thread/num_threads/TestNumThreads.py
lldb/test/API/functionalities/thread/state/TestThreadStates.py
lldb/test/API/functionalities/thread/state_after_expression/TestStateAfterExpression.py
lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py
lldb/test/API/lang/c/stepping/TestStepAndBreakpoints.py
lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py
lldb/test/API/python_api/thread/TestThreadAPI.py
Index: lldb/test/API/python_api/thread/TestThreadAPI.py
===================================================================
--- lldb/test/API/python_api/thread/TestThreadAPI.py
+++ lldb/test/API/python_api/thread/TestThreadAPI.py
@@ -214,7 +214,7 @@
# main2.cpp.
frame0 = thread.GetFrameAtIndex(0)
lineEntry = frame0.GetLineEntry()
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
# Expected failure with clang as the compiler.
# rdar://problem/9223880
#
Index: lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py
===================================================================
--- lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py
+++ lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py
@@ -46,7 +46,7 @@
name = thread.frame[0].name
self.fail("Hit breakpoint {0} in '{1}' rather than getting a SIGBUS".format(id, name))
- self.assertEqual(thread.stop_reason, lldb.eStopReasonSignal)
+ self.assertStopReason(thread.stop_reason, lldb.eStopReasonSignal)
self.assertEqual(thread.GetStopReasonDataAtIndex(0), 10, "Got a SIGBUS")
# Now when we continue, we'll find our way into the signal handler:
Index: lldb/test/API/lang/c/stepping/TestStepAndBreakpoints.py
===================================================================
--- lldb/test/API/lang/c/stepping/TestStepAndBreakpoints.py
+++ lldb/test/API/lang/c/stepping/TestStepAndBreakpoints.py
@@ -165,13 +165,13 @@
process.Continue()
self.assertEqual(thread.GetFrameAtIndex(0).GetFunctionName(), "a")
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
# And one more time should get us back to main:
process.Continue()
self.assertEqual(thread.GetFrameAtIndex(0).GetFunctionName(), "main")
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
# Now make sure we can call a function, break in the called function,
# then have "continue" get us back out again:
Index: lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py
===================================================================
--- lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py
+++ lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py
@@ -41,7 +41,7 @@
substrs=['stopped', 'stop reason ='])
stop_reason = thread.GetStopReason()
- self.assertEqual(stop_reason, lldb.eStopReasonInstrumentation)
+ self.assertStopReason(stop_reason, lldb.eStopReasonInstrumentation)
# test that the UBSan dylib is present
self.expect(
Index: lldb/test/API/functionalities/thread/state_after_expression/TestStateAfterExpression.py
===================================================================
--- lldb/test/API/functionalities/thread/state_after_expression/TestStateAfterExpression.py
+++ lldb/test/API/functionalities/thread/state_after_expression/TestStateAfterExpression.py
@@ -45,7 +45,7 @@
stop_reason = other_thread.GetStopReason()
- self.assertEqual(stop_reason, lldb.eStopReasonBreakpoint,
+ self.assertStopReason(stop_reason, lldb.eStopReasonBreakpoint,
"Still records stopped at breakpoint: %s"
%(lldbutil.stop_reason_to_str(stop_reason)))
self.assertEqual(other_thread.GetStopReasonDataAtIndex(0), 1,
Index: lldb/test/API/functionalities/thread/state/TestThreadStates.py
===================================================================
--- lldb/test/API/functionalities/thread/state/TestThreadStates.py
+++ lldb/test/API/functionalities/thread/state/TestThreadStates.py
@@ -226,7 +226,7 @@
# Stop the process
self.runCmd("process interrupt")
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonSignal)
# Get the inferior out of its loop
self.runCmd("expression g_test = 1")
@@ -282,7 +282,7 @@
# Stop the process
self.runCmd("process interrupt")
- self.assertEqual(thread.GetState(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetState(), lldb.eStopReasonSignal)
# Check the thread state
self.assertTrue(
@@ -302,12 +302,12 @@
thread.IsSuspended(),
"Thread state is \'suspended\' after expression evaluation.")
- self.assertEqual(thread.GetState(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetState(), lldb.eStopReasonSignal)
# Run to breakpoint 2
self.runCmd("continue")
- self.assertEqual(thread.GetState(), lldb.eStopReasonBreakpoint)
+ self.assertStopReason(thread.GetState(), lldb.eStopReasonBreakpoint)
# Make sure both threads are stopped
self.assertTrue(
Index: lldb/test/API/functionalities/thread/num_threads/TestNumThreads.py
===================================================================
--- lldb/test/API/functionalities/thread/num_threads/TestNumThreads.py
+++ lldb/test/API/functionalities/thread/num_threads/TestNumThreads.py
@@ -107,7 +107,7 @@
# If we aren't stopped out the thread breakpoint try to resume.
if thread.GetStopReason() != lldb.eStopReasonBreakpoint:
self.runCmd("thread continue %d"%(i+1))
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonBreakpoint)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonBreakpoint)
expect_threads += " #%d"%(i+1)
Index: lldb/test/API/functionalities/thread/create_during_step/TestCreateDuringStep.py
===================================================================
--- lldb/test/API/functionalities/thread/create_during_step/TestCreateDuringStep.py
+++ lldb/test/API/functionalities/thread/create_during_step/TestCreateDuringStep.py
@@ -141,7 +141,7 @@
'Number of expected threads and actual threads do not match after thread exit.')
stop_reason = stepping_thread.GetStopReason()
- self.assertEqual(stop_reason, lldb.eStopReasonPlanComplete, "Stopped for plan completion")
+ self.assertStopReason(stop_reason, lldb.eStopReasonPlanComplete, "Stopped for plan completion")
# Run to completion
self.runCmd("process continue")
Index: lldb/test/API/functionalities/stop-on-sharedlibrary-load/TestStopOnSharedlibraryEvents.py
===================================================================
--- lldb/test/API/functionalities/stop-on-sharedlibrary-load/TestStopOnSharedlibraryEvents.py
+++ lldb/test/API/functionalities/stop-on-sharedlibrary-load/TestStopOnSharedlibraryEvents.py
@@ -82,14 +82,14 @@
process.Continue()
self.assertState(process.GetState(), lldb.eStateStopped, "We didn't stop for the load")
self.assertEqual(backstop_bkpt_2.GetHitCount(), 0, "Hit our backstop breakpoint")
- self.assertEqual(thread.stop_reason, lldb.eStopReasonBreakpoint, "We attributed the stop to the breakpoint")
+ self.assertStopReason(thread.stop_reason, lldb.eStopReasonBreakpoint, "We attributed the stop to the breakpoint")
self.assertEqual(load_bkpt.GetHitCount(), 1, "We hit our breakpoint at the load address")
else:
bkpt_modifier(load_bkpt)
process.Continue()
self.assertState(process.GetState(), lldb.eStateStopped, "We didn't stop")
self.assertTrue(thread.IsValid(), "Our thread was no longer valid.")
- self.assertEqual(thread.stop_reason, lldb.eStopReasonBreakpoint, "We didn't hit some breakpoint")
+ self.assertStopReason(thread.stop_reason, lldb.eStopReasonBreakpoint, "We didn't hit some breakpoint")
self.assertEqual(backstop_bkpt_2.GetHitCount(), 1, "We continued to the right breakpoint")
Index: lldb/test/API/functionalities/scripted_process/TestScriptedProcess.py
===================================================================
--- lldb/test/API/functionalities/scripted_process/TestScriptedProcess.py
+++ lldb/test/API/functionalities/scripted_process/TestScriptedProcess.py
@@ -122,7 +122,7 @@
self.assertTrue(thread, "Invalid thread.")
self.assertEqual(thread.GetThreadID(), 0x19)
self.assertEqual(thread.GetName(), "DummyScriptedThread.thread-1")
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonSignal)
self.assertGreater(thread.GetNumFrames(), 0)
Index: lldb/test/API/functionalities/return-value/TestReturnValue.py
===================================================================
--- lldb/test/API/functionalities/return-value/TestReturnValue.py
+++ lldb/test/API/functionalities/return-value/TestReturnValue.py
@@ -61,7 +61,7 @@
thread.StepOut()
self.assertState(self.process.GetState(), lldb.eStateStopped)
- self.assertEquals(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
frame = thread.GetFrameAtIndex(0)
fun_name = frame.GetFunctionName()
@@ -93,7 +93,7 @@
thread.StepOutOfFrame(frame)
self.assertState(self.process.GetState(), lldb.eStateStopped)
- self.assertEquals(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
frame = thread.GetFrameAtIndex(0)
fun_name = frame.GetFunctionName()
self.assertEquals(fun_name, "main")
@@ -122,7 +122,7 @@
thread.StepOut()
self.assertState(self.process.GetState(), lldb.eStateStopped)
- self.assertEquals(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
frame = thread.GetFrameAtIndex(0)
fun_name = frame.GetFunctionName()
@@ -262,7 +262,7 @@
thread.StepOut()
self.assertState(self.process.GetState(), lldb.eStateStopped)
- self.assertEquals(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
# Assuming all these functions step out to main. Could figure out the caller dynamically
# if that would add something to the test.
Index: lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
===================================================================
--- lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
+++ lldb/test/API/functionalities/process_group/TestChangeProcessGroup.py
@@ -77,7 +77,7 @@
# step over the setpgid() call
thread.StepOver()
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonPlanComplete)
# verify that the process group has been set correctly
# this also checks that we are still in full control of the child
Index: lldb/test/API/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py
===================================================================
--- lldb/test/API/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py
+++ lldb/test/API/functionalities/postmortem/wow64_minidump/TestWow64MiniDump.py
@@ -42,7 +42,7 @@
# In the dump, none of the threads are stopped, so we cannot use
# lldbutil.get_stopped_thread.
thread = process.GetThreadAtIndex(0)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonNone)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonNone)
def test_stack_info_in_wow64_mini_dump(self):
"""Test that we can see a trivial stack in a VS-generate mini dump."""
Index: lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
===================================================================
--- lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
+++ lldb/test/API/functionalities/postmortem/netbsd-core/TestNetBSDCore.py
@@ -150,7 +150,7 @@
thread = process.GetSelectedThread()
self.assertTrue(thread)
self.assertEqual(thread.GetThreadID(), 1)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonSignal)
self.assertEqual(thread.GetStopReasonDataCount(), 1)
self.assertEqual(thread.GetStopReasonDataAtIndex(0), signal.SIGSEGV)
backtrace = ["bar", "foo", "main"]
@@ -174,7 +174,7 @@
thread = process.GetSelectedThread()
self.assertTrue(thread)
self.assertEqual(thread.GetThreadID(), 2)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonSignal)
self.assertEqual(thread.GetStopReasonDataCount(), 1)
self.assertEqual(thread.GetStopReasonDataAtIndex(0), signal.SIGSEGV)
backtrace = ["bar", "foo", "lwp_main"]
@@ -182,7 +182,7 @@
# thread 1 should have no signal
thread = process.GetThreadByID(1)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonSignal)
self.assertEqual(thread.GetStopReasonDataCount(), 1)
self.assertEqual(thread.GetStopReasonDataAtIndex(0), 0)
@@ -204,7 +204,7 @@
thread = process.GetSelectedThread()
self.assertTrue(thread)
self.assertEqual(thread.GetThreadID(), 2)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonSignal)
self.assertEqual(thread.GetStopReasonDataCount(), 1)
self.assertEqual(thread.GetStopReasonDataAtIndex(0), signal.SIGSEGV)
backtrace = ["bar", "foo", "lwp_main"]
@@ -212,7 +212,7 @@
# thread 1 should have the same signal
thread = process.GetThreadByID(1)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonSignal)
self.assertEqual(thread.GetStopReasonDataCount(), 1)
self.assertEqual(thread.GetStopReasonDataAtIndex(0), signal.SIGSEGV)
Index: lldb/test/API/functionalities/postmortem/minidump/TestMiniDump.py
===================================================================
--- lldb/test/API/functionalities/postmortem/minidump/TestMiniDump.py
+++ lldb/test/API/functionalities/postmortem/minidump/TestMiniDump.py
@@ -34,7 +34,7 @@
# one and only thread.
self.assertEqual(self.process.GetNumThreads(), 1)
thread = self.process.GetThreadAtIndex(0)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonException)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonException)
stop_description = thread.GetStopDescription(256)
self.assertIn("0xc0000005", stop_description)
Index: lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
===================================================================
--- lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
+++ lldb/test/API/functionalities/postmortem/minidump-new/TestMiniDumpNew.py
@@ -117,7 +117,7 @@
# one and only thread.
self.assertEqual(self.process.GetNumThreads(), 1)
thread = self.process.GetThreadAtIndex(0)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonSignal)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonSignal)
stop_description = thread.GetStopDescription(256)
self.assertIn("SIGSEGV", stop_description)
@@ -153,7 +153,7 @@
self.check_state()
self.assertEqual(self.process.GetNumThreads(), 1)
thread = self.process.GetThreadAtIndex(0)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonNone)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonNone)
stop_description = thread.GetStopDescription(256)
self.assertEqual(stop_description, "")
@@ -164,7 +164,7 @@
self.check_state()
self.assertEqual(self.process.GetNumThreads(), 1)
thread = self.process.GetThreadAtIndex(0)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonNone)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonNone)
stop_description = thread.GetStopDescription(256)
self.assertEqual(stop_description, "")
@@ -191,7 +191,7 @@
self.check_state()
self.assertEqual(self.process.GetNumThreads(), 1)
thread = self.process.GetThreadAtIndex(0)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonNone)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonNone)
stop_description = thread.GetStopDescription(256)
self.assertEqual(stop_description, "")
registers = thread.GetFrameAtIndex(0).GetRegisters()
@@ -258,7 +258,7 @@
self.check_state()
self.assertEqual(self.process.GetNumThreads(), 1)
thread = self.process.GetThreadAtIndex(0)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonNone)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonNone)
stop_description = thread.GetStopDescription(256)
self.assertEqual(stop_description, "")
registers = thread.GetFrameAtIndex(0).GetRegisters()
Index: lldb/test/API/functionalities/postmortem/elf-core/thread_crash/TestLinuxCoreThreads.py
===================================================================
--- lldb/test/API/functionalities/postmortem/elf-core/thread_crash/TestLinuxCoreThreads.py
+++ lldb/test/API/functionalities/postmortem/elf-core/thread_crash/TestLinuxCoreThreads.py
@@ -53,7 +53,7 @@
self.assertEqual(bytes_read, None)
reason = thread.GetStopReason()
if( thread.GetThreadID() == tid ):
- self.assertEqual(reason, lldb.eStopReasonSignal)
+ self.assertStopReason(reason, lldb.eStopReasonSignal)
signal = thread.GetStopReasonDataAtIndex(1)
# Check we got signal 4 (SIGILL)
self.assertEqual(signal, 4)
Index: lldb/test/API/functionalities/postmortem/elf-core/gcore/TestGCore.py
===================================================================
--- lldb/test/API/functionalities/postmortem/elf-core/gcore/TestGCore.py
+++ lldb/test/API/functionalities/postmortem/elf-core/gcore/TestGCore.py
@@ -37,7 +37,7 @@
for thread in process:
reason = thread.GetStopReason()
- self.assertEqual(reason, lldb.eStopReasonSignal)
+ self.assertStopReason(reason, lldb.eStopReasonSignal)
signal = thread.GetStopReasonDataAtIndex(1)
# Check we got signal 19 (SIGSTOP)
self.assertEqual(signal, 19)
Index: lldb/test/API/functionalities/mtc/simple/TestMTCSimple.py
===================================================================
--- lldb/test/API/functionalities/mtc/simple/TestMTCSimple.py
+++ lldb/test/API/functionalities/mtc/simple/TestMTCSimple.py
@@ -53,7 +53,7 @@
"instrumentation_class",
"selector"
])
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonInstrumentation)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonInstrumentation)
output_lines = self.res.GetOutput().split('\n')
json_line = '\n'.join(output_lines[2:])
data = json.loads(json_line)
Index: lldb/test/API/functionalities/gdb_remote_client/TestRecognizeBreakpoint.py
===================================================================
--- lldb/test/API/functionalities/gdb_remote_client/TestRecognizeBreakpoint.py
+++ lldb/test/API/functionalities/gdb_remote_client/TestRecognizeBreakpoint.py
@@ -137,5 +137,5 @@
self.assertEqual(thread_1.GetName(), "three", "Thread_0 is called three")
self.assertTrue(thread_1.IsValid(), "Thread_1 is valid")
- self.assertEqual(thread_1.GetStopReason(), lldb.eStopReasonBreakpoint, "Stopped at breakpoint")
+ self.assertStopReason(thread_1.GetStopReason(), lldb.eStopReasonBreakpoint, "Stopped at breakpoint")
Index: lldb/test/API/functionalities/breakpoint/two_hits_one_actual/TestTwoHitsOneActual.py
===================================================================
--- lldb/test/API/functionalities/breakpoint/two_hits_one_actual/TestTwoHitsOneActual.py
+++ lldb/test/API/functionalities/breakpoint/two_hits_one_actual/TestTwoHitsOneActual.py
@@ -57,8 +57,8 @@
process.Continue()
for thread in process.threads:
if thread.id == main_thread.id:
- self.assertEqual(thread.stop_reason, lldb.eStopReasonBreakpoint)
+ self.assertStopReason(thread.stop_reason, lldb.eStopReasonBreakpoint)
else:
- self.assertEqual(thread.stop_reason, lldb.eStopReasonNone)
+ self.assertStopReason(thread.stop_reason, lldb.eStopReasonNone)
Index: lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
===================================================================
--- lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
+++ lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py
@@ -89,17 +89,17 @@
self.thread.StepOver()
# We should be stopped at the breakpoint_2 line with stop plan complete reason
self.assertState(self.process.GetState(), lldb.eStateStopped)
- self.assertEquals(self.thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(self.thread.GetStopReason(), lldb.eStopReasonPlanComplete)
self.thread.StepOver()
# We should be stopped at the breakpoint_3 line with stop plan complete reason
self.assertState(self.process.GetState(), lldb.eStateStopped)
- self.assertEquals(self.thread.GetStopReason(), lldb.eStopReasonPlanComplete)
+ self.assertStopReason(self.thread.GetStopReason(), lldb.eStopReasonPlanComplete)
self.thread.StepOver()
# We should be stopped at the breakpoint_4
self.assertState(self.process.GetState(), lldb.eStateStopped)
- self.assertEquals(self.thread.GetStopReason(), lldb.eStopReasonBreakpoint)
+ self.assertStopReason(self.thread.GetStopReason(), lldb.eStopReasonBreakpoint)
thread1 = lldbutil.get_one_thread_stopped_at_breakpoint(self.process, self.breakpoint4)
self.assertEquals(self.thread, thread1, "Didn't stop at breakpoint 4.")
Index: lldb/test/API/functionalities/breakpoint/breakpoint_on_lambda_capture/TestBreakOnLambdaCapture.py
===================================================================
--- lldb/test/API/functionalities/breakpoint/breakpoint_on_lambda_capture/TestBreakOnLambdaCapture.py
+++ lldb/test/API/functionalities/breakpoint/breakpoint_on_lambda_capture/TestBreakOnLambdaCapture.py
@@ -49,6 +49,6 @@
process.Continue()
for thread in process.threads:
if thread.id == main_thread.id:
- self.assertEqual(thread.stop_reason, lldb.eStopReasonBreakpoint)
+ self.assertStopReason(thread.stop_reason, lldb.eStopReasonBreakpoint)
else:
- self.assertEqual(thread.stop_reason, lldb.eStopReasonNone)
+ self.assertStopReason(thread.stop_reason, lldb.eStopReasonNone)
Index: lldb/test/API/commands/watchpoints/watchpoint_disable/TestWatchpointDisable.py
===================================================================
--- lldb/test/API/commands/watchpoints/watchpoint_disable/TestWatchpointDisable.py
+++ lldb/test/API/commands/watchpoints/watchpoint_disable/TestWatchpointDisable.py
@@ -56,12 +56,12 @@
stop_reason = thread.GetStopReason()
- self.assertEqual(stop_reason, lldb.eStopReasonBreakpoint, "We didn't stop at our breakpoint.")
+ self.assertStopReason(stop_reason, lldb.eStopReasonBreakpoint, "We didn't stop at our breakpoint.")
if test_enable:
wp.SetEnabled(True)
self.assertTrue(wp.IsEnabled(), "The watchpoint thinks it is still disabled.")
process.Continue()
stop_reason = thread.GetStopReason()
- self.assertEqual(stop_reason, lldb.eStopReasonWatchpoint, "We didn't stop at our watchpoint")
+ self.assertStopReason(stop_reason, lldb.eStopReasonWatchpoint, "We didn't stop at our watchpoint")
Index: lldb/test/API/commands/watchpoints/watchpoint_count/TestWatchpointCount.py
===================================================================
--- lldb/test/API/commands/watchpoints/watchpoint_count/TestWatchpointCount.py
+++ lldb/test/API/commands/watchpoints/watchpoint_count/TestWatchpointCount.py
@@ -33,12 +33,12 @@
process.Continue()
stop_reason = thread.GetStopReason()
- self.assertEqual(stop_reason, lldb.eStopReasonWatchpoint, "watchpoint for x1 not hit")
+ self.assertStopReason(stop_reason, lldb.eStopReasonWatchpoint, "watchpoint for x1 not hit")
stop_reason_descr = thread.GetStopDescription(256)
self.assertEqual(stop_reason_descr, "watchpoint 1")
process.Continue()
stop_reason = thread.GetStopReason()
- self.assertEqual(stop_reason, lldb.eStopReasonWatchpoint, "watchpoint for x2 not hit")
+ self.assertStopReason(stop_reason, lldb.eStopReasonWatchpoint, "watchpoint for x2 not hit")
stop_reason_descr = thread.GetStopDescription(256)
self.assertEqual(stop_reason_descr, "watchpoint 2")
Index: lldb/test/API/commands/watchpoints/step_over_watchpoint/TestStepOverWatchpoint.py
===================================================================
--- lldb/test/API/commands/watchpoints/step_over_watchpoint/TestStepOverWatchpoint.py
+++ lldb/test/API/commands/watchpoints/step_over_watchpoint/TestStepOverWatchpoint.py
@@ -56,7 +56,7 @@
self.assertTrue(read_watchpoint, "Failed to set read watchpoint.")
thread.StepOver()
- self.assertEquals(thread.GetStopReason(), lldb.eStopReasonWatchpoint,
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonWatchpoint,
STOPPED_DUE_TO_WATCHPOINT)
self.assertEquals(thread.GetStopDescription(20), 'watchpoint 1')
@@ -83,7 +83,7 @@
self.assertSuccess(error, "Error while setting watchpoint")
thread.StepOver()
- self.assertEquals(thread.GetStopReason(), lldb.eStopReasonWatchpoint,
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonWatchpoint,
STOPPED_DUE_TO_WATCHPOINT)
self.assertEquals(thread.GetStopDescription(20), 'watchpoint 2')
@@ -108,6 +108,6 @@
"Watchpoint ID didn't match.")
watchpoint_hit = True
else:
- self.assertEquals(stop_reason, lldb.eStopReasonPlanComplete,
+ self.assertStopReason(stop_reason, lldb.eStopReasonPlanComplete,
STOPPED_DUE_TO_STEP_IN)
self.assertTrue(watchpoint_hit, "Watchpoint never hit.")
Index: lldb/test/API/commands/watchpoints/multiple_hits/TestMultipleHits.py
===================================================================
--- lldb/test/API/commands/watchpoints/multiple_hits/TestMultipleHits.py
+++ lldb/test/API/commands/watchpoints/multiple_hits/TestMultipleHits.py
@@ -45,5 +45,5 @@
process.Continue();
self.assertState(process.GetState(), lldb.eStateStopped)
- self.assertEqual(thread.GetStopReason(), lldb.eStopReasonWatchpoint)
+ self.assertStopReason(thread.GetStopReason(), lldb.eStopReasonWatchpoint)
Index: lldb/test/API/commands/process/continue_to_bkpt/TestContinueToBkpts.py
===================================================================
--- lldb/test/API/commands/process/continue_to_bkpt/TestContinueToBkpts.py
+++ lldb/test/API/commands/process/continue_to_bkpt/TestContinueToBkpts.py
@@ -32,7 +32,7 @@
for elem in stop_list:
command += " -b {0}".format(elem)
self.expect(command)
- self.assertEqual(self.thread.stop_reason, lldb.eStopReasonBreakpoint, "Hit a breakpoint")
+ self.assertStopReason(self.thread.stop_reason, lldb.eStopReasonBreakpoint, "Hit a breakpoint")
self.assertEqual(self.thread.GetStopReasonDataAtIndex(0), bkpt_to_hit, "Hit the right breakpoint")
if loc_to_hit != 0:
self.assertEqual(self.thread.GetStopReasonDataAtIndex(1), loc_to_hit, "Hit the right location")
Index: lldb/packages/Python/lldbsuite/test/lldbutil.py
===================================================================
--- lldb/packages/Python/lldbsuite/test/lldbutil.py
+++ lldb/packages/Python/lldbsuite/test/lldbutil.py
@@ -266,6 +266,10 @@
return "plancomplete"
elif enum == lldb.eStopReasonThreadExiting:
return "threadexiting"
+ elif enum == lldb.eStopReasonInstrumentation:
+ return "instrumentation"
+ elif enum == lldb.eStopReasonProcessorTrace:
+ return "processortrace"
else:
raise Exception("Unknown StopReason enum")
Index: lldb/packages/Python/lldbsuite/test/lldbtest.py
===================================================================
--- lldb/packages/Python/lldbsuite/test/lldbtest.py
+++ lldb/packages/Python/lldbsuite/test/lldbtest.py
@@ -2474,6 +2474,14 @@
lldbutil.state_type_to_str(second), second)
self.fail(self._formatMessage(msg, error))
+ """Assert two stop reasons are equal"""
+ def assertStopReason(self, first, second, msg=None):
+ if first != second:
+ error = "{} ({}) != {} ({})".format(
+ lldbutil.stop_reason_to_str(first), first,
+ lldbutil.stop_reason_to_str(second), second)
+ self.fail(self._formatMessage(msg, error))
+
def createTestTarget(self, file_path=None, msg=None,
load_dependent_modules=True):
"""
Index: lldb/docs/resources/test.rst
===================================================================
--- lldb/docs/resources/test.rst
+++ lldb/docs/resources/test.rst
@@ -323,13 +323,15 @@
asserts are available. LLDB also has a few custom asserts that are tailored
to our own data types.
-+-----------------------------------------------+---------------------------------------------------------------+
++-----------------------------------------------+-----------------------------------------------------------------+
| **Assert** | **Description** |
-+-----------------------------------------------+---------------------------------------------------------------+
++-----------------------------------------------+-----------------------------------------------------------------+
| ``assertSuccess`` | Assert that an ``lldb.SBError`` is in the "success" state. |
-+-----------------------------------------------+---------------------------------------------------------------+
++-----------------------------------------------+-----------------------------------------------------------------+
| ``assertState`` | Assert that two states (``lldb.eState*``) are equal. |
-+-----------------------------------------------+---------------------------------------------------------------+
++-----------------------------------------------+-----------------------------------------------------------------+
+| ``assertStopReason`` | Assert that two stop reasons (``lldb.eStopReason*``) are equal. |
++-----------------------------------------------+-----------------------------------------------------------------+
If you can't find a specific assert that fits your needs and you fall back
to a generic assert, make sure you put useful information into the assert's
_______________________________________________
lldb-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits