pub struct Orchestrator<S, D> { /* private fields */ }Expand description
The main orchestrator that coordinates test execution.
The orchestrator is the top-level component that ties together:
- A pre-populated
SandboxPoolof execution environments - A
TestFrameworkfor running tests
It manages the full lifecycle of a test run: scheduling, parallel execution, retries, and result aggregation.
§Type Parameters
S: The sandbox type (implementsSandbox)D: The test framework type
Implementations§
Source§impl<S, D> Orchestrator<S, D>where
S: Sandbox,
D: TestFramework,
impl<S, D> Orchestrator<S, D>where
S: Sandbox,
D: TestFramework,
Sourcepub fn new(config: Config, framework: D, verbose: bool, tracer: Tracer) -> Self
pub fn new(config: Config, framework: D, verbose: bool, tracer: Tracer) -> Self
Creates a new orchestrator with the given components.
§Arguments
config- Configuration loaded from TOMLframework- Test framework for running testsverbose- Whether to show verbose output (streaming test output)tracer- Performance tracer for emitting trace events
Sourcepub async fn run_with_tests(
&self,
tests: &[TestRecord],
sandbox_pool: SandboxPool<S>,
) -> Result<RunResult>
pub async fn run_with_tests( &self, tests: &[TestRecord], sandbox_pool: SandboxPool<S>, ) -> Result<RunResult>
Runs the given tests and returns the aggregated results.
Takes already-discovered tests as input, allowing callers to
inspect or filter tests before execution. Results are recorded
into each TestRecord via interior mutability.
§Arguments
tests- The tests to run (typically fromdiscover)sandbox_pool- Pool of sandboxes to use
§Returns
RunResult containing summary statistics and individual results.
§Errors
Returns an error if critical infrastructure errors occur.
Auto Trait Implementations§
impl<S, D> Freeze for Orchestrator<S, D>where
D: Freeze,
impl<S, D> RefUnwindSafe for Orchestrator<S, D>where
D: RefUnwindSafe,
S: RefUnwindSafe,
impl<S, D> Send for Orchestrator<S, D>
impl<S, D> Sync for Orchestrator<S, D>
impl<S, D> Unpin for Orchestrator<S, D>
impl<S, D> UnsafeUnpin for Orchestrator<S, D>where
D: UnsafeUnpin,
impl<S, D> UnwindSafe for Orchestrator<S, D>where
D: UnwindSafe,
S: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more