summaryrefslogtreecommitdiff
path: root/lldb/test/API/functionalities/gdb_remote_client/TestProcessConnect.py
AgeCommit message (Collapse)Author
2023-05-25[NFC][Py Reformat] Reformat python files in lldbJonas Devlieghere
This is an ongoing series of commits that are reformatting our Python code. Reformatting is done with `black` (23.1.0). If you end up having problems merging this commit because you have made changes to a python file, the best way to handle that is to run `git checkout --ours <yourfile>` and then reformat it with black. RFC: https://discourse.llvm.org/t/rfc-document-and-standardize-python-code-style Differential revision: https://reviews.llvm.org/D151460
2022-10-06[lldb] Move breakpoint hit reset code to Target::CleanupProcessPavel Labath
This ensures it is run regardless of the method we use to initiate the session (previous version did not handle connects), and it is the same place that is used for resetting watchpoints. Differential Revision: https://reviews.llvm.org/D134882
2022-06-17[lldb][tests] Automatically call compute_mydir (NFC)Dave Lee
Eliminate boilerplate of having each test manually assign to `mydir` by calling `compute_mydir` in lldbtest.py. Differential Revision: https://reviews.llvm.org/D128077
2021-11-16[lldb/test] Move gdb client utils into the packages treePavel Labath
This infrastructure has proven proven its worth, so give it a more prominent place. My immediate motivation for this is the desire to reuse this infrastructure for qemu platform testing, but I believe this move makes sense independently of that. Moving this code to the packages tree will allow as to add more structure to the gdb client tests -- currently they are all crammed into the same test folder as that was the only way they could access this code. I'm splitting the code into two parts while moving it. The first once contains just the generic gdb protocol wrappers, while the other one contains the unit test glue. The reason for that is that for qemu testing, I need to run the gdb code in a separate process, so I will only be using the first part there. Differential Revision: https://reviews.llvm.org/D113893
2021-10-04[lldb] [test] Terminate "process connect" connections via killMichał Górny
Fix the termination of "process connect" (and "gdb-remote") to kill the process rather than attempting to disconnect the platform. The latter only results in an error since we did not use "platform connect", and apparently process-level connections (at least via gdb-remote) do not really support disconnecting. Differential Revision: https://reviews.llvm.org/D110996
2021-10-01[lldb] Add a gdb_remote_client test for connecting to ptyMichał Górny
Add a minimal mock server utilizing a pty, and add a client test connecting to that server. Differential Revision: https://reviews.llvm.org/D110878
2021-09-30[lldb] Remove support for replaying the test suite from a reproducerJonas Devlieghere
This patch removes the infrastructure to replay the test suite from a reproducer, as well as the modifications made to the individual tests.
2020-11-23[lldb] Add platform select to TestProcessConnect.pyJonas Devlieghere
Extend TestProcessConnect to cover the scenario fixed by 6c0cd5676e0a0feaf836e0399023a6e21224467b. This replaces command-process-connect.test which would fail if port 4321 was open.
2020-11-23[lldb] [test] Restore Windows-skip on 'process connect' testsMichał Górny
2020-11-23[lldb] Prevent 'process connect' from using local-only pluginsMichał Górny
Add a 'can_connect' parameter to Process plugin initialization, and use it to filter plugins to these capable of remote connections. This is used to prevent 'process connect' from picking up a plugin that can only be used locally, e.g. the legacy FreeBSD plugin. Differential Revision: https://reviews.llvm.org/D91810
2020-11-05[lldb] Enable FreeBSDRemote plugin by default and update test statusMichał Górny
The new FreeBSDRemote plugin has reached feature parity on i386 and amd64 targets. Use it by default on these architectures, while allowing the use of the legacy plugin via FREEBSD_LEGACY_PLUGIN envvar. Revisit the method of switching plugins. Apparently, the return value of PlatformFreeBSD::CanDebugProcess() is what really decides whether the legacy or the new plugin is used. Update the test status. Reenable the tests that were previously disabled on FreeBSD and do not cause hangs or are irrelevant to FreeBSD. Mark all tests that fail reliably as expectedFailure. For now, tests that are flaky (i.e. produce unstable results) are left enabled and cause unpredictable test failures. Differential Revision: https://reviews.llvm.org/D90757
2020-11-02[lldb] Generalize an deflake gdb-remote *client* testsPavel Labath
This is similar in spirit to what D90313 did for server tests.
2020-08-05[lldb] Skip TestProcessConnect when running remotelyJonas Devlieghere
This test doesn't make much sense when already running remotely.
2020-07-15[lldb/Test] Skip async process connect tests with reproducersJonas Devlieghere
Reproducers only support synchronous mode.
2020-07-14[lldb/Test] Skip TestProcessConnect.py on WindowsJonas Devlieghere
Remote connections are not supported on Windows.
2020-07-14[lldb/Test] Skip TestProcessConnect.py on WindowsJonas Devlieghere
Skip TestProcessConnect.py on Windows and Android (the same platforms as TestPlatformProcessConnect.py) and mark it as a NO_DEBUG_INFO test so we don't run all the variants.
2020-07-14[lldb] Make `process connect` blocking in synchronous mode.Jonas Devlieghere
In synchronous mode, the process connect command and its aliases should wait for the stop event before claiming the command is complete. Currently, the stop event is always handled asynchronously by the debugger. The implementation takes the same approach as Process::ResumeSynchronous which hijacks the event and handles it on the current thread. Similarly, after this patch, the stop event is part of the command return object, which is the property used by the test case. Differential revision: https://reviews.llvm.org/D83728