Struct bootstrap::core::build_steps::test::Coverage

source ·
pub struct Coverage {
    pub compiler: Compiler,
    pub target: TargetSelection,
}
Expand description

Coverage tests are a bit more complicated than other test suites, because we want to run the same set of test files in multiple different modes, in a way that’s convenient and flexible when invoked manually.

This combined step runs the specified tests (or all of tests/coverage) in both “coverage-map” and “coverage-run” modes.

Used by:

  • x test coverage
  • x test tests/coverage
  • x test tests/coverage/trivial.rs (etc)

(Each individual mode also has its own step that will run the tests in just that mode.)

Fields§

§compiler: Compiler§target: TargetSelection

Implementations§

source§

impl Coverage

source

const PATH: &'static str = "tests/coverage"

source

const SUITE: &'static str = "coverage"

source

fn run_coverage_tests( builder: &Builder<'_>, compiler: Compiler, target: TargetSelection, mode: &'static str )

Runs the coverage test suite (or a user-specified subset) in one mode.

This same function is used by the multi-mode step (Coverage) and by the single-mode steps (CoverageMap and CoverageRun), to help ensure that they all behave consistently with each other, regardless of how the coverage tests have been invoked.

Trait Implementations§

source§

impl Clone for Coverage

source§

fn clone(&self) -> Coverage

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Coverage

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Hash for Coverage

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for Coverage

source§

fn eq(&self, other: &Coverage) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Step for Coverage

source§

const DEFAULT: bool = false

We rely on the individual CoverageMap/CoverageRun steps to run themselves.

source§

const ONLY_HOSTS: bool = false

When manually invoked, try to run as much as possible. Compiletest will automatically skip the “coverage-run” tests if necessary.

§

type Output = ()

PathBuf when directories are created or to return a Compiler once it’s been assembled.
source§

fn should_run(run: ShouldRun<'_>) -> ShouldRun<'_>

When bootstrap is passed a set of paths, this controls whether this rule will execute. However, it does not get called in a “default” context when we are not passed any paths; in that case, make_run is called directly.
source§

fn make_run(run: RunConfig<'_>)

Builds up a “root” rule, either as a default rule or from a path passed to us. Read more
source§

fn run(self, builder: &Builder<'_>)

Primary function to execute this rule. Can call builder.ensure() with other steps to run those.
source§

impl Eq for Coverage

source§

impl StructuralPartialEq for Coverage

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.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

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

Initializes a with the given initializer. Read more
§

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

Dereferences the given pointer. Read more
§

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

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

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

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. 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.

Layout§

Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.

Size: 72 bytes