[Lldb-commits] [PATCH] D82522: [lldb/IOHandlerCursesGUI] Make the menu bar clickable

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Thu Jun 25 02:30:33 PDT 2020


labath added a comment.

Being curious is nice, but it would be even nicer if we figured out a way to test all of this stuff. Currently we have some very basic pexpect tests for this, but it's not clear how that will scale to more complex interactions (such as mouse clicking).

My idea for a test strategy (which is looking for someone to implement it) is to write (or resuse an existing -- pyte <https://github.com/selectel/pyte/tree/master/pyte> looks interesting) a simple "terminal emulator" in python. The idea is that this would process the raw escape sequences and produce an in-memory view of what the resulting screen should look like. Then we just connect the pexpect output to this terminal emulator.

This would allow us to write assertions based on that the virtual terminal view, so that we check *what* actually gets printed on the screen, and ignore the exact details about *how* it gets printed. (e.g. `self.assertIn("Process (F3)", screen[0])`...

(All this assumes that we're able to inject mouse clicks via pexpect, which I haven't checked whether it's possible, but I presume pexpect is low-level enough to be able to do something like that.)


Repository:
  rLLDB LLDB

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D82522/new/

https://reviews.llvm.org/D82522





More information about the lldb-commits mailing list