Struct cucumber::writer::Libtest

source ·
pub struct Libtest<W, Out: Write = Stdout> { /* private fields */ }
Available on crate feature libtest only.
Expand description

libtest compatible Writer.

Currently used only to support --format=json option.

Ordering

This Writer isn’t Normalized by itself, so should be wrapped into a writer::Normalize, otherwise will produce output Events in a broken order.

Ideally, we shouldn’t wrap this into a writer::Normalize and leave this to tools, parsing JSON output. Unfortunately, not all tools can do that (ex. IntelliJ Rust), so it’s still recommended to wrap this into writer::Normalize even if it can mess up timing reports.

Implementations

Creates a new Normalized Libtest Writer outputting into the io::Stdout.

Creates a new Writer which uses a Normalized Libtest in case Cli::format is set to Json, or provided the writer otherwise.

Creates a new Writer which uses a Normalized Libtest in case Cli::format is set to Json, or a Normalized writer::Basic otherwise.

Creates a new Normalized Libtest Writer outputting into the provided output.

Theoretically, normalization should be done by the tool that’s consuming the output og this Writer. But lack of clear specification of the libtest’s JSON output leads to some tools struggling to interpret it. So, we recommend using a Normalized Libtest::new() rather than a non-Normalized Libtest::raw().

Creates a new non-Normalized Libtest Writer outputting into the provided output.

Theoretically, normalization should be done by the tool that’s consuming the output og this Writer. But lack of clear specification of the libtest’s JSON output leads to some tools struggling to interpret it. So, we recommend using a Normalized Libtest::new() rather than a non-Normalized Libtest::raw().

Trait Implementations

Writes val to the Writer’s output.
Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns number of Passed Steps. Read more
Returns number of Skipped Steps. Read more
Returns number of Failed Steps. Read more
Returns number of retried Steps. Read more
Returns number of parsing errors.
Returns number of failed Scenario hooks. Read more
Indicates whether there were failures/errors during execution.
CLI options of this Writer. In case no options should be introduced, just use cli::Empty. Read more
Handles the given Cucumber event. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
Asserts this Writer being Normalized. Read more
Wraps this Writer into a Normalized version. Read more
Wraps this Writer to print a summary at the end of an output. Read more
Wraps this Writer to fail on Skipped Steps if their Scenario isn’t marked with @allow.skipped tag. Read more
Wraps this Writer to fail on Skipped Steps if the given with predicate returns true. Read more
Wraps this Writer to re-output Skipped Steps at the end of an output. Read more
Wraps this Writer to re-output Failed Steps or Parser errors at the end of an output. Read more
Wraps this Writer to re-output filtered events at the end of an output. Read more
Attaches the provided other Writer to the current one for passing events to both of them simultaneously. Read more
Wraps this Writer into a discard::Arbitrary one, providing a no-op ArbitraryWriter implementation. Read more
Wraps this Writer into a discard::Stats one, providing a no-op StatsWriter implementation returning only 0. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.