SDK · crate
kinogaki-studio-ui-api-testing
The UI layer's test support (a dev-dependency only): headless fakes of the host's UI for plugin unit tests: RecordingUi and RecordingPainter record what a plugin asks to show and draw, and play back scripted user actions, with no window and no GPU ...
- Repository
- SDK (kinogaki/studio-sdk)
- Folder
sdk/crates/ui-api-testing- Source
- 8 files, 2,639 lines
- Tests
- 0 files, 0 lines
What it is
The UI layer's test support (a dev-dependency only): headless fakes of the host's UI for plugin unit tests: RecordingUi and RecordingPainter record what a plugin asks to show and draw, and play back scripted user actions, with no window and no GPU; FakeHost stands in for Studio's host interface, with its objects' networks FakeNetworks, and Hosting calls a registered package's parts on it as the host does; view and camera are the views a view call is about.
Depends on
| Crate | Repository | As | What it is |
|---|---|---|---|
kinogaki-studio-api | SDK | normal | Kinogaki Studio's headless plugin API. |
kinogaki-studio-api-testing | SDK | normal | The SDK's test support (a dev-dependency only): assert_refused for admission tests, read_hostile for a format's tests of hostile files, format for its scratch folders and round trips, workers as a host installs them, with wgpu an ... |
kinogaki-studio-ui-api | SDK | normal | Kinogaki Studio's UI layer for plugins. |
kinogaki-viewport-api | SDK | normal | Kinogaki's viewport packet contract: what a data type hands Studio's viewport to draw, with no GPU or UI API. |
Third-party
None.
Used by
| Crate | Repository | As | What it is |
|---|---|---|---|
example-box-node | SDK | tests | A Kinogaki Studio plugin that adds a Box node. |
example-pin-board | SDK | tests | A Kinogaki Studio plugin that brings a context with its UI. |
kinogaki-studio | Core and the app | tests | Kinogaki Studio: the editor in a window, after the plugins load. |
kinogaki-testkit | Core and the app | normal | Kinogaki Studio's core testkit: toy packages written against the SDK alone, so core is tested with no real plugin. |
Modules
calls(private)HostCall: what a package asked of aFakeHost.63 lineshost(private)FakeHost: the host interface without Studio, recording what a package asks of it, its objects' networksFakeNetworks;Hosting: a registered package with its state, called the way the host calls it (state taken out per call and put back, callbacks ...767 linesnetwork(private)FakeNetwork: one object's network in memory, edited and cooked the way Studio's core does it, so a package tests its tools' network edits and its node types in a network without Studio.734 linespainter(private)RecordingPainter: aPainterthat records what it is asked to draw.291 linesui(private)RecordingUi: aUithat records what it is asked to show and plays back scripted user actions.340 linesui_impl(private)RecordingUi'sUi: each widget laid out, recorded and answered from the script.374 linesview(private)Views as the host hands them to a view call, for plugin tests:viewandcamera, to change as a test needs (its index, its response, what the pointer is over).45 lines
Public types and traits
At the crate root
Structs FakeHostFakeNetworkFakeObjectHostingRecordingPainterRecordingUi
Enums CallHostCall
By module: 8 public types and traits in 5 modules
calls HostCall
host FakeHostFakeObjectHosting
network FakeNetwork
painter RecordingPainter
ui CallRecordingUi
