Skip to main content

rightkit_qa/
lib.rs

1//! rightkit-qa: the Rust QA harness for Right Suite apps (macOS and Windows).
2//!
3//! Replaces `@rightkit/qa` (embedded-WebDriver launch, run lock, evidence, guard,
4//! frames/paint/panes) and the Node e2e harness pattern (`tests/e2e/lib.mjs`,
5//! `ui.mjs`, `scripts/e2e.mjs`). Everything is Rust; no Node or Python runtime.
6//!
7//! Targets:
8//! * engine: [`engine::EngineTarget`] drives the app engine over CLI words and the
9//!   framed stdio sidecar.
10//! * app UI: [`control::Control`] launches the real Tauri app hidden/backgrounded
11//!   and drives it through the in-app `rightkit-control` server.
12//! * Chrome: `browser` feature, through `rightkit-browser`.
13//!
14//! Scenarios are declarative TOML ([`scenario`]) run by the CLI, or plain Rust
15//! integration tests wrapped by [`harness::Harness::scenario`] (tier gating, requires-skip,
16//! per-scenario evidence, orphan check). Knobs reach managed (`rightkit cargo`) test runs
17//! through cargo features plus a [`settings::Settings`] file, never the caller's environment.
18//!
19//! Validators: [`media`] (WAV stats, PNG/frame non-uniformity) and [`loudness`]
20//! (BS.1770 integrated loudness, range, true peak), pure Rust except where a compressed
21//! container needs a caller-supplied ffmpeg. [`mock::MockServer`] stands in for paid providers.
22pub mod audio;
23#[cfg(feature = "browser")]
24pub mod browser;
25pub mod check;
26pub mod config;
27pub mod control;
28pub mod engine;
29pub mod evidence;
30pub mod guard;
31pub mod harness;
32pub mod http;
33pub mod lock;
34pub mod loudness;
35pub mod media;
36pub mod mock;
37pub mod page;
38pub mod process;
39pub mod scenario;
40pub mod settings;
41pub mod suite;
42pub mod util;
43pub mod workspace;
44
45pub use util::{Error, Result};