[lldb][tests] Automatically call compute_mydir (NFC)Eliminate boilerplate of having each test manually assign to `mydir` by calling`compute_mydir` in lldbtest.py.Differential Revision: https://r
[lldb][tests] Automatically call compute_mydir (NFC)Eliminate boilerplate of having each test manually assign to `mydir` by calling`compute_mydir` in lldbtest.py.Differential Revision: https://reviews.llvm.org/D128077
show more ...
[lldb] Remove support for replaying the test suite from a reproducerThis patch removes the infrastructure to replay the test suite from areproducer, as well as the modifications made to the indivi
[lldb] Remove support for replaying the test suite from a reproducerThis patch removes the infrastructure to replay the test suite from areproducer, as well as the modifications made to the individual tests.
[lldb/tests] Removed add_test_categories decorator for python API tests, NFCThere is a .categories file in the python_api directory that makes all nested testsbelong to the category "pyapi". The d
[lldb/tests] Removed add_test_categories decorator for python API tests, NFCThere is a .categories file in the python_api directory that makes all nested testsbelong to the category "pyapi". The decorator is unnecessary for these tests.
[lldb] [Process/NetBSD] Copy the recent improvements from FreeBSDCopy the recent improvements from the FreeBSDRemote plugin, notably:- moving event reporting setup into SetupTrace() helper- add
[lldb] [Process/NetBSD] Copy the recent improvements from FreeBSDCopy the recent improvements from the FreeBSDRemote plugin, notably:- moving event reporting setup into SetupTrace() helper- adding more debug info into SIGTRAP handling- handling user-generated (and unknown) SIGTRAP events- adding missing error handling to the generic signal handler- fixing attaching to processes- switching watchpoint helpers to use llvm::Error- minor style and formatting changesThis fixes a number of tests, mostly related to fixed attaching.Differential Revision: https://reviews.llvm.org/D91167
[lldb/Test] Always set the cleanupSubprocesses tear down hookAlways clean up subprocesses on tear down instead of relying on thecaller to do so. This is not only less error prone but also means th
[lldb/Test] Always set the cleanupSubprocesses tear down hookAlways clean up subprocesses on tear down instead of relying on thecaller to do so. This is not only less error prone but also means thetests can be more concise.Differential revision: https://reviews.llvm.org/D83787
[lldb/Test] Introduce "assertSuccess"Summary:A lot of our tests do 'self.assertTrue(error.Success()'. The problemwith that is that when this fails, it produces a completely uselesserror message
[lldb/Test] Introduce "assertSuccess"Summary:A lot of our tests do 'self.assertTrue(error.Success()'. The problemwith that is that when this fails, it produces a completely uselesserror message (False is not True) and the most important piece ofinformation -- the actual error message -- is completely hidden.Sometimes we mitigate that by including the error message in the "msg"argument, but this has two additional problems:- as the msg argument is evaluated unconditionally, one needs to be careful to not trigger an exception when the operation was actually successful.- it requires more typing, which means we often don't do itassertSuccess solves these problems by taking the entire SBError objectas an argument. If the operation was unsuccessful, it can format areasonable error message itself. The function still accepts a "msg"argument, which can include any additional context, but this context nowdoes not need to include the error message.To demonstrate usage, I replace a number of existing assertTrueassertions with the new function. As this process is not easilyautomatable, I have just manually updated a representative sample. Insome cases, I did not update the code to use assertSuccess, but I wentfor even higher-level assertion apis (runCmd, expect_expr), as these areeven shorter, and can produce even better failure messages.Reviewers: teemperor, JDevlieghereSubscribers: arphaman, lldb-commitsTags: #lldbDifferential Revision: https://reviews.llvm.org/D82759
[lldb/Reproducers] Differentiate active and passive replay unexpected packet.
[lldb/Reproducers] Skip remaining failing test in python_api subdirSkip the remaining two failing test in the python_api subdirectory. Seeinline comments for the reason why.
[lldb/Test] Add skipIfReproducer for tests that diverge during replayAdd the skipIfReproducer decorator to the remaining tests that fail toreplay because the GDB remote packets diverge during repl
[lldb/Test] Add skipIfReproducer for tests that diverge during replayAdd the skipIfReproducer decorator to the remaining tests that fail toreplay because the GDB remote packets diverge during replay. This is*not* expected and should be fixed, but figuring out exactly what causedthe divergence has proven pretty difficult to track down.I've marked these tests as skipped for now so we can get clean resultsand detect new regressions. I have no evidence to believe that thesefailures have the same root cause, so I've not assigned them a PR.
[lldb][test] Remove symlink for API tests.Summary: Moves lldbsuite tests to lldb/test/API.This is a largely mechanical change, moved with the following steps:```rm lldb/test/API/testcasesmkdi
[lldb][test] Remove symlink for API tests.Summary: Moves lldbsuite tests to lldb/test/API.This is a largely mechanical change, moved with the following steps:```rm lldb/test/API/testcasesmkdir -p lldb/test/API/{test_runner/test,tools/lldb-{server,vscode}}mv lldb/packages/Python/lldbsuite/test/test_runner/test lldb/test/API/test_runnerfor d in $(find lldb/packages/Python/lldbsuite/test/* -maxdepth 0 -type d | egrep -v "make|plugins|test_runner|tools"); do mv $d lldb/test/API; donefor d in $(find lldb/packages/Python/lldbsuite/test/tools/lldb-vscode -maxdepth 1 -mindepth 1 | grep -v ".py"); do mv $d lldb/test/API/tools/lldb-vscode; donefor d in $(find lldb/packages/Python/lldbsuite/test/tools/lldb-server -maxdepth 1 -mindepth 1 | egrep -v "gdbremote_testcase.py|lldbgdbserverutils.py|socket_packet_pump.py"); do mv $d lldb/test/API/tools/lldb-server; done```lldb/packages/Python/lldbsuite/__init__.py and lldb/test/API/lit.cfg.py were also updated with the new directory structure.Reviewers: labath, JDevlieghereTags: #lldbDifferential Revision: https://reviews.llvm.org/D71151