Struct deqp_runner::piglit_command::PiglitCommand

source ·
pub struct PiglitCommand {
    pub config: TestConfiguration,
    pub piglit_folder: PathBuf,
    pub prefix: String,
}

Fields§

§config: TestConfiguration§piglit_folder: PathBuf§prefix: String

Trait Implementations§

source§

impl SingleBinaryTestCommand for PiglitCommand

source§

fn current_test<'a>(&self, tests: &'a [&TestCase]) -> &'a BinaryTest

Sanity-checks and returns the BinaryTest that the test list contains.
source§

impl SingleTestCommand for PiglitCommand

source§

fn test_groups<'d>( &'d self, sub_config: &SubRunConfig, filters: &[String], tests: Vec<TestCase> ) -> Result<Vec<(&'d dyn TestCommand, Vec<TestCase>)>>
where Self: Sized,

source§

impl TestCommand for PiglitCommand

source§

fn name(&self) -> &str

Must be implemented, returns the name of this TestCommand for logging errors.
source§

fn prepare( &self, _caselist_state: &CaselistState, tests: &[&TestCase] ) -> Result<Command>

source§

fn clean( &self, _caselist_state: &CaselistState, tests: &[&TestCase], _results: &[RunnerResult] ) -> Result<()>

Hook for cleaning up anything necessary after running a test binary (like removing logs that shouldn’t be saved for all the passing tests).
source§

fn parse_results( &self, _caselist_state: &CaselistState, tests: &[&TestCase], stdout: TimeoutChildStdout<'_>, timer: Option<Timer>, fail_counter: Option<FailCounter> ) -> Result<CaselistResult>

Invokes the test suite’s result parser on stdout.
source§

fn should_save_log( &self, _caselist_state: &CaselistState, tests: &[&TestCase] ) -> bool

Overrideable hook for whether a log should be always be saved. Sometimes there’s a test that collects general implementation details (API version, extensions) that might be useful for the user to always have, for sanity-checking that the run tested what they intended.
source§

fn log_path( &self, _caselist_state: &CaselistState, tests: &[&TestCase] ) -> Result<PathBuf>

source§

fn see_more(&self, test_name: &str, _caselist_state: &CaselistState) -> String

Optional (recommended) hook for logging on failure to point the user to more information about a specific failure (caselist, log file, etc).
source§

fn config(&self) -> &TestConfiguration

Must be implemented, returns the shared test configuration for this TestCommand.
source§

fn skips(&self) -> &RegexSet

source§

fn flakes(&self) -> &RegexSet

source§

fn baseline(&self) -> &RunnerResults

source§

fn baseline_status(&self, test: &str) -> Option<RunnerStatus>

source§

fn translate_result( &self, result: &TestResult, caselist_state: &CaselistState ) -> RunnerStatus

source§

fn skip_test(&self, test: &str) -> bool

source§

fn handle_result( &self, _caselist_state: &CaselistState, _result: &TestResult, _status: &RunnerStatus ) -> Result<()>

Used for doing any extra logging that might need to be done for failed tests.
source§

fn handle_exit_status( &self, code: Option<i32>, some_result: Option<&mut TestResult> )

By default, sets the last test result with Crash if the binary crashed after emitting test results. Can also be overridden if the exit status is what determines test success/failure.
source§

fn run( &self, caselist_state: &CaselistState, tests: &[&TestCase], fail_counter: Option<FailCounter> ) -> Result<Vec<RunnerResult>>

Invokes the test command on a list of testcases. This is common code because of the trickiness in handling timeouts, whether logs should be saved, etc.
source§

fn run_caselist_and_flake_detect( &self, caselist: &[TestCase], caselist_state: &mut CaselistState, fail_counter: Option<FailCounter> ) -> Result<Vec<RunnerResult>>

Loop invoking the list of cases, where we run again to check if it was just a flake if an unexpected result occurs.
source§

fn process_caselist( &self, tests: Vec<TestCase>, caselist_id: u32, total_failures: Arc<AtomicUsize> ) -> Result<Vec<RunnerResult>>

source§

fn split_tests_to_groups( &self, tests: Vec<TestCase>, tests_per_group: usize, min_tests_per_group: usize, sub_config: &SubRunConfig, include_filters: &[RegexSet] ) -> Result<Vec<(&dyn TestCommand, Vec<TestCase>)>>
where Self: Sized,

source§

fn caselist_file_path( &self, caselist_state: &CaselistState, suffix: &str ) -> Result<PathBuf>

source§

fn prefix(&self) -> &str

Optional prefix to add to the test names, to distinguish between testsuite variations (like enabled debug knobs) in a deqp-runner suite invocation.

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> Pointable for T

source§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
source§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
source§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
source§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
source§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

source§

fn vzip(self) -> V