Expand description
Mini-playwright test driver for rlvgl.
rlvgl-playit provides input injection, widget queries by tag, and
framebuffer pixel inspection over a pluggable transport (serial, in-process,
etc.).
§Architecture
test host target / simulator
────────── ──────────────────
"T100,200\n" ──► transport ──► PlayitExecutor::poll()
├─ parse_command()
├─ EventSpec → Event
├─ WidgetNode::dispatch_event()
└─► "OK\r\n" ──► transport ──► host§Modules
| Module | Purpose |
|---|---|
command | Command, EventSpec, KeySpec, QuerySpec, DumpSpec, TouchPointSpec |
response | Response, StatusData |
protocol | Text wire codec (parse / format) |
transport | PlayitTransport byte-level I/O trait |
executor | PlayitExecutor, EventPipeline — main poll loop + gesture routing |
recorder | EventRecorder — timed input capture for replay |
tag | find_by_tag / find_by_tag_mut tree walkers |
framebuffer | FramebufferReader pixel inspection trait |
[tcp] | Loopback TCP transport for simulator / host automation (std) |
§no_std support
The crate is no_std-compatible by default with no allocator required.
Enable alloc for heap-backed helpers or std for standard-library
integrations.
Re-exports§
pub use command::Command;pub use command::DumpSpec;pub use command::EventSpec;pub use command::KeySpec;pub use command::QuerySpec;pub use command::TouchPointSpec;pub use command::TouchStateSpec;pub use executor::EventPipeline;pub use executor::PlayitExecutor;pub use framebuffer::FramebufferReader;pub use recorder::EventRecorder;pub use recorder::RecordEntry;pub use response::Response;pub use response::StatusData;pub use tag::find_by_tag;pub use tag::find_by_tag_mut;pub use transport::PlayitTransport;
Modules§
- command
- Command types for the playit test driver.
- executor
- The playit executor: polls a transport, parses commands, and dispatches them against the widget tree.
- framebuffer
- Framebuffer pixel inspection trait.
- protocol
- Text wire protocol codec.
- recorder
- Timed event recorder.
- response
- Response types returned by the playit executor.
- tag
- Depth-first tag lookup in a
WidgetNodetree. - transport
- Transport abstraction for the playit driver.