Skip to main content

harn_test_runner/
lib.rs

1//! Reusable user-test execution contracts.
2//!
3//! This crate is the compile boundary for Harn's test engine. Command-line
4//! parsing and rendering remain in `harn-cli`; test discovery, scheduling,
5//! execution state, and machine-readable receipts live here so focused runner
6//! work does not compile the entire CLI product graph.
7
8mod callable;
9mod discovery;
10mod fixtures;
11mod model;
12mod reporting;
13mod scheduling;
14mod session;
15mod timing;
16
17#[doc(hidden)]
18pub use callable::{prepare_callable_entries, PreparedCallableCases};
19#[doc(hidden)]
20pub use discovery::{extract_cases_from_program, parse_program, seed_imported_enum_candidates};
21#[doc(hidden)]
22pub use fixtures::{FixtureScope, TestFixture};
23#[doc(hidden)]
24pub use model::TestCase;
25pub use reporting::{
26    AggregateTimings, PhaseTimings, SuiteCallablePreparation, SuiteModulePreparation, TestPhase,
27    TestResult, TestSummary, TestTimeout,
28};
29#[doc(hidden)]
30pub use scheduling::{execute_parallel_cases, ParallelCaseResults, ParallelRunOptions};
31pub use scheduling::{TestRunEvent, TestRunProgress};
32pub use session::{TestRunSession, TestRunSessionStats};
33pub use timing::DurationSummary;