pub struct PluginVerifierRunner { /* private fields */ }Expand description
Generic verifier runner driven by a plugin’s VerifierProfile.
Instead of hardcoding language-specific commands, this runner reads the
profile’s VerifierCapability entries and executes the best available
command (primary → fallback → skip) for each stage.
For languages with detailed output parsers (e.g., pytest, cargo test),
prefer the language-specific runners. PluginVerifierRunner is the
fallback for plugins that don’t have a dedicated runner or when the
orchestrator wants uniform dispatch across all detected plugins.
Implementations§
Source§impl PluginVerifierRunner
impl PluginVerifierRunner
Sourcepub fn new(working_dir: PathBuf, profile: VerifierProfile) -> Self
pub fn new(working_dir: PathBuf, profile: VerifierProfile) -> Self
Create a new runner from a plugin’s verifier profile.
Sourcepub async fn run_all_stages(&self) -> Vec<(VerifierStage, Result<TestResults>)>
pub async fn run_all_stages(&self) -> Vec<(VerifierStage, Result<TestResults>)>
Run all available stages in order, returning results keyed by stage.
Sourcepub fn profile(&self) -> &VerifierProfile
pub fn profile(&self) -> &VerifierProfile
Get the underlying profile.
Trait Implementations§
Source§impl TestRunnerTrait for PluginVerifierRunner
impl TestRunnerTrait for PluginVerifierRunner
Source§fn run_syntax_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TestResults>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn run_syntax_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TestResults>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Run syntax/type check (e.g.,
cargo check, uv run ty check .)Source§fn run_tests<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TestResults>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn run_tests<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TestResults>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Run the test suite (e.g.,
cargo test, uv run pytest)Source§fn run_build_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TestResults>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn run_build_check<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<TestResults>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Run build check (e.g.,
cargo build)Auto Trait Implementations§
impl Freeze for PluginVerifierRunner
impl RefUnwindSafe for PluginVerifierRunner
impl Send for PluginVerifierRunner
impl Sync for PluginVerifierRunner
impl Unpin for PluginVerifierRunner
impl UnsafeUnpin for PluginVerifierRunner
impl UnwindSafe for PluginVerifierRunner
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more