Skip to main content

Crate jugar_probar

Crate jugar_probar 

Source
Expand description

Probar: Rust-Native Testing Framework for WASM Games

Per spec Section 6.1: Probar (Spanish: “to test/prove”) is a pure Rust alternative to Playwright/Puppeteer, designed for WASM game testing.

§Architecture

┌─────────────────────────────────────────────────────────────────┐
│                    PROBAR Architecture                           │
├─────────────────────────────────────────────────────────────────┤
│   ┌────────────┐    ┌────────────┐    ┌────────────┐            │
│   │ Test Spec  │    │ WASM       │    │ Headless   │            │
│   │ (Rust)     │───►│ Test       │───►│ Browser    │            │
│   │            │    │ Harness    │    │ (chromium) │            │
│   └────────────┘    └────────────┘    └────────────┘            │
└─────────────────────────────────────────────────────────────────┘

Re-exports§

pub use capabilities::CapabilityError;
pub use capabilities::CapabilityStatus;
pub use capabilities::RequiredHeaders;
pub use capabilities::WasmThreadCapabilities;
pub use capabilities::WorkerEmulator;
pub use capabilities::WorkerMessage;
pub use capabilities::WorkerState;
pub use cdp_coverage::CoverageConfig;
pub use cdp_coverage::CoverageRange;
pub use cdp_coverage::CoverageReport;
pub use cdp_coverage::CoveredFunction;
pub use cdp_coverage::FunctionCoverage;
pub use cdp_coverage::JsCoverage;
pub use cdp_coverage::LineCoverage;
pub use cdp_coverage::ScriptCoverage;
pub use cdp_coverage::SourceMapEntry;
pub use cdp_coverage::WasmCoverage;
pub use cdp_coverage::WasmSourceMap;
pub use clock::create_clock;
pub use clock::Clock;
pub use clock::ClockController;
pub use clock::ClockError;
pub use clock::ClockOptions;
pub use clock::ClockState;
pub use clock::FakeClock;
pub use context::BrowserContext;
pub use context::ContextConfig;
pub use context::ContextManager;
pub use context::ContextPool;
pub use context::ContextPoolStats;
pub use context::ContextState;
pub use context::Cookie;
pub use context::Geolocation;
pub use context::SameSite;
pub use context::StorageState;
pub use dialog::AutoDialogBehavior;
pub use dialog::Dialog;
pub use dialog::DialogAction;
pub use dialog::DialogExpectation;
pub use dialog::DialogHandler;
pub use dialog::DialogHandlerBuilder;
pub use dialog::DialogType;
pub use file_ops::guess_mime_type;
pub use file_ops::Download;
pub use file_ops::DownloadManager;
pub use file_ops::DownloadState;
pub use file_ops::FileChooser;
pub use file_ops::FileInput;
pub use har::Har;
pub use har::HarBrowser;
pub use har::HarCache;
pub use har::HarContent;
pub use har::HarCookie;
pub use har::HarCreator;
pub use har::HarEntry;
pub use har::HarError;
pub use har::HarHeader;
pub use har::HarLog;
pub use har::HarOptions;
pub use har::HarPlayer;
pub use har::HarPostData;
pub use har::HarPostParam;
pub use har::HarQueryParam;
pub use har::HarRecorder;
pub use har::HarRequest;
pub use har::HarResponse;
pub use har::HarTimings;
pub use har::NotFoundBehavior;
pub use network::CapturedRequest;
pub use network::HttpMethod;
pub use network::MockResponse;
pub use network::NetworkInterception;
pub use network::NetworkInterceptionBuilder;
pub use network::Route;
pub use network::UrlPattern;
pub use performance::Measurement;
pub use performance::MetricStats;
pub use performance::MetricType;
pub use performance::PerformanceMonitor;
pub use performance::PerformanceProfile;
pub use performance::PerformanceProfiler;
pub use performance::PerformanceProfilerBuilder;
pub use performance::PerformanceSummary;
pub use performance::PerformanceThreshold;
pub use playbook::calculate_mutation_score;
pub use playbook::check_complexity_violation;
pub use playbook::to_dot;
pub use playbook::Action as PlaybookAction;
pub use playbook::ActionExecutor;
pub use playbook::Assertion as PlaybookAssertion;
pub use playbook::AssertionFailure as PlaybookAssertionFailure;
pub use playbook::ComplexityAnalyzer;
pub use playbook::ComplexityClass;
pub use playbook::ComplexityResult;
pub use playbook::DeterminismInfo;
pub use playbook::ExecutionResult as PlaybookExecutionResult;
pub use playbook::ExecutorError;
pub use playbook::Invariant;
pub use playbook::IssueSeverity;
pub use playbook::MutantResult;
pub use playbook::MutationClass;
pub use playbook::MutationGenerator;
pub use playbook::MutationScore;
pub use playbook::PerformanceBudget;
pub use playbook::Playbook;
pub use playbook::PlaybookError;
pub use playbook::PlaybookExecutor;
pub use playbook::ReachabilityInfo;
pub use playbook::State as PlaybookState;
pub use playbook::StateMachine;
pub use playbook::StateMachineValidator;
pub use playbook::Transition as PlaybookTransition;
pub use playbook::ValidationIssue;
pub use playbook::ValidationResult;
pub use playbook::WaitCondition as PlaybookWaitCondition;
pub use presentar::generate_falsification_playbook;
pub use presentar::parse_and_validate as parse_and_validate_presentar;
pub use presentar::validate_config as validate_presentar_config;
pub use presentar::Cell as PresentarCell;
pub use presentar::Color as PresentarColor;
pub use presentar::FalsificationCheck;
pub use presentar::FalsificationResult;
pub use presentar::KeybindingConfig;
pub use presentar::LayoutConfig;
pub use presentar::PanelConfig;
pub use presentar::PanelConfigs;
pub use presentar::PanelType;
pub use presentar::PresentarConfig;
pub use presentar::PresentarError;
pub use presentar::TerminalAssertion;
pub use presentar::TerminalSnapshot;
pub use presentar::ThemeConfig;
pub use presentar::ValidationResult as PresentarValidationResult;
pub use presentar::FALSIFICATION_COUNT;
pub use presentar::SCHEMA_VERSION;
pub use renacer_integration::ChromeTrace;
pub use renacer_integration::ChromeTraceEvent;
pub use renacer_integration::TraceCollector;
pub use renacer_integration::TraceContext;
pub use renacer_integration::TraceSpan;
pub use renacer_integration::TracingConfig as RenacerTracingConfig;
pub use replay::Replay;
pub use replay::ReplayHeader;
pub use replay::ReplayPlayer;
pub use replay::ReplayRecorder;
pub use replay::StateCheckpoint;
pub use replay::TimedInput;
pub use replay::VerificationResult;
pub use replay::REPLAY_FORMAT_VERSION;
pub use av_sync::compare_edl_to_onsets;
pub use av_sync::detect_onsets;
pub use av_sync::default_edl_path;
pub use av_sync::extract_audio;
pub use av_sync::AudioOnset;
pub use av_sync::AudioTickPlacement;
pub use av_sync::AvSyncReport;
pub use av_sync::DetectionConfig;
pub use av_sync::EditDecision;
pub use av_sync::EditDecisionList;
pub use av_sync::SegmentSyncResult;
pub use av_sync::SyncVerdict;
pub use av_sync::TickDelta;
pub use av_sync::DEFAULT_SAMPLE_RATE;
pub use audio_quality::analyze_audio;
pub use audio_quality::analyze_samples;
pub use audio_quality::detect_clipping;
pub use audio_quality::detect_silence;
pub use audio_quality::AudioLevels;
pub use audio_quality::AudioQualityConfig;
pub use audio_quality::AudioQualityReport;
pub use audio_quality::AudioVerdict;
pub use audio_quality::ClippingReport;
pub use audio_quality::SilenceRegion;
pub use audio_quality::SilenceReport;
pub use video_quality::build_ffprobe_args;
pub use video_quality::parse_ffprobe_json;
pub use video_quality::probe_video;
pub use video_quality::validate_video;
pub use video_quality::VideoCheck;
pub use video_quality::VideoExpectations;
pub use video_quality::VideoProbe;
pub use video_quality::VideoQualityReport;
pub use video_quality::VideoVerdict;
pub use animation::sample_easing;
pub use animation::verify_easing;
pub use animation::verify_events;
pub use animation::verify_timeline;
pub use animation::AnimationEvent;
pub use animation::AnimationEventType;
pub use animation::AnimationReport;
pub use animation::AnimationTimeline;
pub use animation::AnimationVerdict;
pub use animation::EasingFunction;
pub use animation::EasingVerification;
pub use animation::EventResult;
pub use animation::Keyframe;
pub use animation::ObservedEvent;
pub use shard::ShardConfig;
pub use shard::ShardParseError;
pub use shard::ShardReport;
pub use shard::ShardedRunner;
pub use strict::ChecklistError;
pub use strict::ConsoleCapture;
pub use strict::ConsoleSeverity;
pub use strict::ConsoleValidationError;
pub use strict::E2ETestChecklist;
pub use strict::WasmStrictMode;
pub use tracing_support::ConsoleLevel;
pub use tracing_support::ConsoleMessage;
pub use tracing_support::EventCategory;
pub use tracing_support::EventLevel;
pub use tracing_support::ExecutionTracer;
pub use tracing_support::NetworkEvent;
pub use tracing_support::SpanStatus;
pub use tracing_support::TraceArchive;
pub use tracing_support::TraceMetadata;
pub use tracing_support::TracedEvent;
pub use tracing_support::TracedSpan;
pub use tracing_support::TracingConfig;
pub use tui::expect_frame;
pub use tui::FrameAssertion;
pub use tui::FrameSequence;
pub use tui::MultiValueTracker;
pub use tui::SnapshotManager;
pub use tui::TuiFrame;
pub use tui::TuiSnapshot;
pub use tui::TuiTestBackend;
pub use tui::ValueTracker;
pub use tui_load::ComponentTimings;
pub use tui_load::DataGenerator;
pub use tui_load::IntegrationLoadTest;
pub use tui_load::SyntheticItem;
pub use tui_load::TuiFrameMetrics;
pub use tui_load::TuiLoadAssertion;
pub use tui_load::TuiLoadConfig;
pub use tui_load::TuiLoadError;
pub use tui_load::TuiLoadResult;
pub use tui_load::TuiLoadTest;
pub use ux_coverage::calculator_coverage;
pub use ux_coverage::game_coverage;
pub use ux_coverage::ElementCoverage;
pub use ux_coverage::ElementId;
pub use ux_coverage::InteractionType;
pub use ux_coverage::StateId;
pub use ux_coverage::TrackedInteraction;
pub use ux_coverage::UxCoverageBuilder;
pub use ux_coverage::UxCoverageReport;
pub use ux_coverage::UxCoverageTracker;
pub use validators::CompressionAlgorithm;
pub use validators::PartialResult;
pub use validators::ScreenshotContent;
pub use validators::StateTransition;
pub use validators::StreamingMetric;
pub use validators::StreamingMetricRecord;
pub use validators::StreamingState;
pub use validators::StreamingUxValidator;
pub use validators::StreamingValidationError;
pub use validators::StreamingValidationResult;
pub use validators::TestExecutionStats;
pub use validators::VuMeterConfig;
pub use validators::VuMeterError;
pub use validators::VuMeterSample;
pub use wait::wait_timeout;
pub use wait::wait_until;
pub use wait::FnCondition;
pub use wait::LoadState;
pub use wait::NavigationOptions;
pub use wait::PageEvent;
pub use wait::WaitCondition;
pub use wait::WaitOptions;
pub use wait::WaitResult;
pub use wait::Waiter;
pub use wait::DEFAULT_WAIT_TIMEOUT_MS;
pub use wait::NETWORK_IDLE_THRESHOLD_MS;
pub use watch::FileChange;
pub use watch::FileChangeKind;
pub use watch::FileWatcher;
pub use watch::FnWatchHandler;
pub use watch::WatchBuilder;
pub use watch::WatchConfig;
pub use watch::WatchHandler;
pub use watch::WatchStats;
pub use brick::Brick;
pub use brick::BrickAssertion;
pub use brick::BrickBudget;
pub use brick::BrickError;
pub use brick::BrickPhase;
pub use brick::BrickResult;
pub use brick::BrickVerification;
pub use brick::BudgetViolation;
pub use brick::AudioBrick;
pub use brick::AudioParam;
pub use brick::BrickWorkerMessage;
pub use brick::BrickWorkerMessageDirection;
pub use brick::EventBinding;
pub use brick::EventBrick;
pub use brick::EventHandler;
pub use brick::EventType;
pub use brick::FieldType;
pub use brick::RingBufferConfig;
pub use brick::WorkerBrick;
pub use brick::WorkerTransition;
pub use brick_house::BrickHouse;
pub use brick_house::BrickHouseBuilder;
pub use brick_house::BrickTiming;
pub use brick_house::BudgetReport;
pub use brick_house::JidokaAlert;
pub use websocket::MessageDirection;
pub use websocket::MessageType;
pub use websocket::MockWebSocketResponse;
pub use websocket::WebSocketConnection;
pub use websocket::WebSocketMessage;
pub use websocket::WebSocketMock;
pub use websocket::WebSocketMonitor;
pub use websocket::WebSocketMonitorBuilder;
pub use websocket::WebSocketState;

Modules§

animation
Animation Verification: timing, easing curves, physics events. Animation Verification: timing, easing curves, physics events.
audio_quality
Audio Quality Verification: levels, clipping, silence analysis. Audio Quality Verification: levels, clipping, silence analysis.
av_sync
AV Sync Testing: Verify rendered audio-visual synchronization against EDL ground truth. AV Sync Testing: Verify rendered audio-visual synchronization against EDL ground truth.
brick
Brick Architecture: Tests ARE the Interface (PROBAR-SPEC-009)
brick_house
BrickHouse: Budgeted Composition of Bricks (PROBAR-SPEC-009)
capabilities
WASM Thread Capabilities Detection (Advanced Testing Concepts) WASM Thread Capabilities Detection (PROBAR-SPEC-010)
cdp_coverage
CDP Profiler-based Code Coverage (Issue #10) CDP Profiler-based Code Coverage (Issue #10)
clock
Clock Manipulation for Deterministic Tests (Feature G.6) Clock Manipulation for Deterministic Tests (Feature G.6)
comply
Compliance Checking for WASM Threading (PROBAR-SPEC-WASM-001)
context
Multi-Browser Context Management (Feature 14) Multi-Browser Context Management (Feature 14)
coverage
WASM Coverage Tooling (spec: probar-wasm-coverage-tooling.md) WASM Coverage Tooling for Probar
dialog
Dialog Handling for E2E Testing (Feature G.8) Dialog Handling for E2E Testing (Feature G.8)
emulation
Device Emulation and Geolocation Mocking (Features 15-16) Device Emulation and Environment Mocking (Features 15-16)
file_ops
File Upload/Download Operations (Feature G.8) File Upload and Download Operations (Feature G.8)
gpu_pixels
GPU Pixel Testing: Atomic verification of CUDA kernel correctness GPU Pixel Testing: Atomic verification of CUDA kernel correctness
har
HAR Recording Module (Spec: G.2 Network Interception) HAR (HTTP Archive) Recording and Playback (Feature G.2)
lint
State Synchronization Linting (PROBAR-SPEC-WASM-001)
media
Media Generation Module (Spec: missing-features-in-pure-rust.md) Media Generation Module (Spec: missing-features-in-pure-rust.md)
mock
Mock Runtime for WASM Callback Testing (PROBAR-SPEC-WASM-001)
network
Network Request Interception (Feature 7) Network Request Interception (Feature 7)
perf
Performance Benchmarking with Renacer Integration (Advanced Feature C) Performance Benchmarking with Renacer Integration (Advanced Feature C)
performance
Performance Profiling (Feature 10) Performance Profiling (Feature 10)
pixel_coverage
Pixel-Level GUI Coverage Visualization (Advanced Feature A)
playbook
Playbook Testing: State Machine Verification (PROBAR-004) YAML-driven state machine testing with M1-M5 mutation classes. Playbook Testing: State Machine Verification
prelude
Prelude for convenient imports
presentar
Presentar YAML Support (PROBAR-SPEC-015)
renacer_integration
Renacer Integration for Deep WASM Tracing (Issue #9) Renacer Integration for Probar (Issue #9)
replay
Deterministic Replay System (Feature 23 - EDD Compliance) Enhanced Deterministic Replay System (Feature 23 - EDD Compliance)
runner
WASM Runner with Hot Reload (Advanced Feature D) WASM Runner with Hot Reload (Advanced Feature D)
shard
Test Sharding for Distributed Execution (Feature G.5) Test Sharding for Distributed Execution (Feature G.5)
standard_invariants
Standard invariants for game testing
strict
WASM Strict Mode Enforcement (Advanced Testing Concepts) WASM Strict Mode and Console Capture (PROBAR-SPEC-010)
tracing_support
Execution Tracing (Feature 9) Execution Tracing (Feature 9)
tui
TUI Testing Support (Feature 21 - EDD Compliance) TUI Testing Support (Feature 21 - EDD Compliance)
tui_load
TUI Load Testing (Framework-Agnostic Performance Testing)
ux_coverage
UX Coverage Metrics (Feature 24 - EDD Compliance) UX Coverage Metrics (Feature 24 - EDD Compliance)
validators
Streaming UX Validators (Advanced Testing Concepts) Streaming UX Validators (PROBAR-SPEC-011)
video_quality
Video Quality Verification: codec, resolution, FPS, duration validation. Video Quality Verification: codec, resolution, FPS, duration validation.
wait
Wait Mechanisms (PMAT-005) Wait Mechanisms (PMAT-005)
watch
Watch Mode with Hot Reload (Feature 6) Note: Not available on WASM targets (requires filesystem access) Watch Mode with Hot Reload (Feature 6)
web
Zero-JavaScript Web Asset Generation (Advanced Feature E) Zero-JavaScript Web Asset Generation (Advanced Feature E)
websocket
WebSocket Monitoring (Feature 8) WebSocket Monitoring (Feature 8)
worker_harness
WASM Worker Test Harness (PROBAR-SPEC-013).
zero_js
Zero-JavaScript Validation for WASM-First Applications (PROBAR-SPEC-012).

Macros§

gui_coverage
Create a GUI coverage tracker with minimal boilerplate

Structs§

AccessibilityAudit
Result of an accessibility audit
AccessibilityConfig
Configuration for accessibility validation
AccessibilityIssue
An accessibility issue found during audit
AccessibilityValidator
Accessibility validator for game testing
AndonCordPulled
Andon Cord pulled error
Assertion
Assertion helpers for testing
AssertionFailure
A single assertion failure
AssertionResult
Result of an assertion
AssertionSummary
Summary of assertion results
BoundingBox
Bounding box for an element
Browser
Browser instance for testing (mock when browser feature disabled)
BrowserConfig
Browser configuration
BrowserConsoleMessage
A captured browser console message (from CDP)
Color
Color represented as RGB values
ComponentId
Component identifier for type-safe component access
ContrastAnalysis
Results of a contrast analysis
ContrastPair
A pair of colors with their contrast ratio
DeviceDescriptor
Mobile device descriptor for emulation
DiffRegion
Region where images differ
DragBuilder
Builder for drag operations
DragOperation
Drag operation builder
DriverConfig
Browser configuration for driver
ElementHandle
Element handle for DOM interactions
EnergyVerifier
Verify energy conservation
EntityId
Entity identifier for type-safe game state access
EntitySnapshot
Entity snapshot for inspection
EquationContext
Context for equation evaluation
EquationResult
Result of an equation verification
EquationVerifier
Equation verifier for testing physics and game invariants
Expect
Smart assertion builder for locators (Playwright’s expect())
FixtureBuilder
Builder for creating fixtures with dependencies.
FixtureManager
Manager for test fixtures with dependency-ordered setup/teardown.
FixtureScope
A fixture scope for automatic teardown using RAII.
FlashDetector
Flash detection for photosensitivity protection
FlashResult
Result of flash detection
FocusConfig
Focus indicator configuration
FrameResult
Result of stepping the game by one frame
FuzzerConfig
Configuration for input fuzzing
GameHostState
Host state accessible to WASM guest
GameStateData
Game state data container
GameStateSnapshot
Game state snapshot with delta encoding
ImageDiffResult
Result of comparing two images
InputFuzzer
Input fuzzer for Monte Carlo game testing
InvariantCheck
A single invariant check
InvariantChecker
Invariant checker for game state validation during fuzzing
InvariantVerifier
Game-specific invariant verifier
InvariantViolation
A violation of an invariant
KeyboardIssue
A keyboard navigation issue
KinematicVerifier
Verify kinematic equations (constant acceleration)
Locator
A locator for finding and interacting with elements.
LocatorOptions
Locator options for customizing behavior
MaskRegion
Mask region for screenshot comparison - excludes dynamic areas from comparison
MemoryView
Zero-copy memory view for WASM state inspection
MockDriver
Mock driver for unit testing
MomentumVerifier
Verify momentum conservation
NetworkInterceptor
Network request interceptor configuration
NetworkResponse
Mock network response
Page
A browser page for testing (mock when browser feature disabled)
PageMetrics
Page performance metrics
PageObjectBuilder
Builder for creating page objects with locators
PageRegistry
Page object registry for managing multiple pages
Point
A point in 2D space
RandomWalkAgent
A random walk agent for testing
RecordedFrame
A single frame’s worth of recorded data
ReplayResult
Result of replaying a simulation
Reporter
Test reporter with Andon Cord support
RetryAssertion
A retry assertion that polls until success or timeout
RetryConfig
Configuration for retry behavior
RetryError
Error when retry assertion fails
RetryResult
Result of a successful retry assertion
RuntimeConfig
WASM runtime configuration
Screenshot
Screenshot data with metadata
ScreenshotComparison
Screenshot comparison configuration (Playwright API parity)
Seed
Deterministic seed for reproducible fuzzing
SimpleFixture
A simple fixture that executes closures for setup and teardown.
SimplePageObject
A simple generic page object implementation
SimulatedGameState
A simulated game state for testing
SimulationConfig
Configuration for simulation runs
SimulationRecording
A complete simulation recording
Snapshot
A visual snapshot
SnapshotCache
LRU cache for snapshot storage
SnapshotConfig
Configuration for snapshot testing
SnapshotDiff
Result of comparing two snapshots
SoftAssertionError
Error type for soft assertion failures
SoftAssertions
Soft assertions collector
StateBridge
State bridge for game state inspection
StateDelta
Delta-encoded state snapshot for efficient storage
TestCase
A single test case
TestHarness
Test harness for running suites
TestResult
Result of running a single test
TestResultEntry
Individual test result
TestSuite
A test suite containing multiple tests
Touch
Touch input for testing
TraceData
Trace data for performance analysis
UrlMatcher
URL pattern matcher for page objects
Variable
A variable binding for equation evaluation
VisualDiff
Visual comparison result using perceptual hash
VisualRegressionConfig
Configuration for visual regression testing
VisualRegressionTester
Visual regression tester
WasmRuntime
Stub runtime for when the runtime feature is disabled

Enums§

AssertionCheckResult
Result of a retry assertion check
AssertionMode
Mode for soft assertions behavior
BridgeConnection
Bridge connection type
BrowserConsoleLevel
Browser console message level (from CDP)
ExpectAssertion
Assertion types for expect()
FailureMode
Failure mode for test execution
FixtureState
State of a fixture in the manager.
InputEvent
Input event types
LocatorAction
Actions that can be performed on a located element
LocatorQuery
Queries that return information about located elements
ProbarError
Errors that can occur in Probar
Selector
Selector type for locating elements
Severity
Severity level of an accessibility issue
TestStatus
Test result status
TouchAction
Touch input action

Constants§

DEFAULT_POLL_INTERVAL_MS
Default polling interval for auto-waiting (50ms)
DEFAULT_TIMEOUT_MS
Default timeout for auto-waiting (5 seconds)
MIN_CONTRAST_LARGE
Minimum contrast ratio for large text (WCAG 2.1 AA)
MIN_CONTRAST_NORMAL
Minimum contrast ratio for normal text (WCAG 2.1 AA)
MIN_CONTRAST_UI
Minimum contrast ratio for UI components (WCAG 2.1 AA)

Traits§

Fixture
Trait for test fixtures that can be set up and torn down.
PageObject
Trait for page objects representing a page or component in the UI.
PageObjectInfo
Trait for type-erased page object info
ProbarComponent
Trait for type-safe component access (Poka-Yoke pattern)
ProbarEntity
Trait for type-safe entity selectors (Poka-Yoke pattern)

Functions§

expect
Create an expectation for a locator (Playwright-style)
perceptual_diff
Calculate perceptual color difference (weighted for human vision)
retry_contains
Helper to create retry assertions for string contains
retry_eq
Helper to create retry assertions for equality checks
retry_none
Helper to create retry assertions for Option::is_none
retry_some
Helper to create retry assertions for Option::is_some
retry_true
Helper to create retry assertions for boolean conditions
run_replay
Replay a simulation recording and verify determinism
run_simulation
Run a simulation with the given configuration

Type Aliases§

ProbarResult
Result type for Probar operations