Install
dotnet add package Gua.Core --version 0.12.0
dotnet add package Gua.Testing --version 0.12.0
dotnet add package Gua.Testing.Godot --version 0.12.0Omit the version to select the latest stable NuGet release. Keep all three packages on the same version line.
Gua.Core
The lowest .NET layer over the native C ABI. It defines the UI-tree, request, and event contracts.
| Type | Responsibility |
|---|---|
IGuaContext | The common operation boundary shared by local and remote contexts. |
GuaContext | Owns a native Gua context and its nodes, snapshots, requests, and events. |
GuaSelector | Represents selection by ID, role, text, state, and scope. |
GuaNodeState | Observed state such as visible, enabled, value, focused, and checked. |
GuaAction / GuaEvent | An external request and the result or event observed by the host. |
GuaReset | The contract for session epochs and clearing requests, events, and retained history. |
Gua.Testing
Adds the higher-level API consumed by tests.
| Type | Responsibility |
|---|---|
GuaAssertions | Entry point for GetById, GetByRole, and WaitFor.... |
GuaLocatorQuery | Builds selectors with ByRole, ByText, Within, WhereVisible, and related filters. |
GuaNodeSnapshot | Evidence for a node at the exact frame and revision where a wait succeeded. |
GuaTestSession | Controls reset and strict leak detection around a test. |
GuaAssertionScope | Applies framework failure handling and diagnostic options within a scope. |
GuaDiagnostics | Writes the UI tree, logs, history, and environment metadata after a failure. |
Gua.Testing.Godot
Starts a Godot process and connects to its in-game WebSocket bridge.
| Type | Responsibility |
|---|---|
GodotSceneTestHost | Owns scene startup, bridge connection, shutdown, process output, and screenshot access. |
GodotSceneTestHostOptions | Configures the executable, project path, headless mode, port, environment, and reset policy. |
GuaRemoteContext | An IGuaContext that polls snapshots and sends actions over WebSocket. |
GuaRemoteUiTree | Converts a remote JSON snapshot into the .NET node model. |
GuaScreenshot | Represents a saved PNG, including its absolute path and dimensions. |