llvm-project/lldb/packages/Python/lldbsuite/test
Walter Erquinigo 34885bffdf [lldb-vscode] Handle request_evaluate's context attribute
Summary:
The request "evaluate" supports a "context" attribute, which is sent by VSCode. The attribute is defined here https://microsoft.github.io/debug-adapter-protocol/specification#Requests_Evaluate

The "clipboard" context is not yet supported by lldb-vscode, so we can forget about it for now. The 'repl' (i.e. Debug Console) and 'watch' (i.e. Watch Expression) contexts must use the expression parser in case the frame's variable path is not enough, as the user expects these expressions to never fail. On the other hand, the 'hover' expression is invoked whenever the user hovers on any keyword on the UI and the user is fine with the expression not being fully resolved, as they know that the 'repl' case is the fallback they can rely on.

Given that the 'hover' expression is invoked many many times without the user noticing it due to it being triggered by the mouse, I'm making it use only the frame's variable path functionality and not the expression parser. This should speed up tremendously the responsiveness of a debug session when the user only sets source breakpoints and inspect local variables, as the entire debug info is not needed to be parsed.

Regarding tests, I've tried to be as comprehensive as possible considering a multi-file project. Fortunately, the results from the "hover" case are enough most of the times.

Differential Revision: https://reviews.llvm.org/D98656
2021-03-15 15:09:23 -07:00
..
builders [lldb] Use `foo is None` instead of `not foo` in darwin.py 2021-01-28 20:03:44 -08:00
make [lldb] Add -Wl,-rpath to make tests run with fresh built libc++ 2021-01-24 20:21:57 +00:00
test_runner [lldb] NFC: Fix trivial typo in comments, documents, and messages 2020-04-07 01:06:16 +09:00
tools [lldb-vscode] Handle request_evaluate's context attribute 2021-03-15 15:09:23 -07:00
README-TestSuite
__init__.py
bench.py [lldb][NFC] Remove unused imports in python tests 2019-08-02 08:06:22 +00:00
concurrent_base.py [lldb][NFC] Remove 'from __future__ import print_function' from all tests that don't actually call 'print()' 2019-12-13 12:23:04 +01:00
configuration.py [lldb] Remove LLDB session dir and just store test traces in the respective test build directory 2020-12-04 11:43:10 +01:00
darwin_log.py [lldb][NFC] Remove unused imports in python tests 2019-08-02 08:06:22 +00:00
decorators.py Revert "Make sure the interpreter module was loaded before making checks against it" 2021-02-21 10:38:25 -08:00
dotest.py [lldb] [Process/FreeBSD] Introduce aarch64 hw break/watchpoint support 2021-03-10 18:36:19 +01:00
dotest_args.py Reapply "[lldb/test] Automatically find debug servers to test" 2021-02-21 20:47:47 +01:00
lldb_pylint_helper.py Update the file headers across all of the LLVM projects in the monorepo 2019-01-19 08:50:56 +00:00
lldbbench.py
lldbdwarf.py
lldbinline.py [lldb] lldbinline and lldbtest gardening (NFC) 2020-07-14 10:41:45 -07:00
lldbpexpect.py [lldb] Let TestPExpectTest test the right test class 2021-02-12 09:56:43 +01:00
lldbplatform.py [lldb] Add Apple simulator platforms to lldbplatform.py 2020-11-05 15:34:42 +01:00
lldbplatformutil.py [lldb/test] Ensure launched processes are ready to be attached 2021-01-14 12:07:04 +01:00
lldbtest.py [lldb/test] Ensure launched processes are ready to be attached 2021-01-14 12:07:04 +01:00
lldbtest_config.py [dotest] Add the ability to set environment variables for the inferior. 2019-06-26 16:12:08 +00:00
lldbutil.py [lldb] Move Xcode SDK helper functions into lldbutil 2020-08-19 13:30:27 -07:00
test_categories.py [lldb/test] Replace ad-hoc server test choice with test categories 2020-12-10 16:21:28 +01:00
test_result.py [lldb] [test] Rename '.categories' to 'categories' 2020-11-10 12:02:38 +01:00