pub struct TestWriter { /* private fields */ }
fmt
and std
only.Expand description
A writer intended to support libtest
’s output capturing for use in unit tests.
TestWriter
is used by fmt::Subscriber
or fmt::Layer
to enable capturing support.
cargo test
can only capture output from the standard library’s print!
and eprint!
macros. See libtest
’s output capturing and
rust-lang/rust#90785 for more details about
output capturing.
Writing to io::stdout
and io::stderr
produces the same results as using
libtest
’s --nocapture
option which may make the results look unreadable.
Implementations§
Source§impl TestWriter
impl TestWriter
Sourcepub fn with_stderr() -> Self
pub fn with_stderr() -> Self
Returns a new TestWriter
that writes to stderr
instead of stdout
.
Trait Implementations§
Source§impl Debug for TestWriter
impl Debug for TestWriter
Source§impl Default for TestWriter
impl Default for TestWriter
Source§impl<'a> MakeWriter<'a> for TestWriter
impl<'a> MakeWriter<'a> for TestWriter
Source§type Writer = TestWriter
type Writer = TestWriter
io::Write
implementation returned by make_writer
.Source§impl Write for TestWriter
impl Write for TestWriter
Source§fn write(&mut self, buf: &[u8]) -> Result<usize>
fn write(&mut self, buf: &[u8]) -> Result<usize>
Source§fn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Source§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
can_vector
#69941)1.0.0 · Source§fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
Source§fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
write_all_vectored
#70436)Auto Trait Implementations§
impl Freeze for TestWriter
impl RefUnwindSafe for TestWriter
impl Send for TestWriter
impl Sync for TestWriter
impl Unpin for TestWriter
impl UnwindSafe for TestWriter
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
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<'a, M> MakeWriterExt<'a> for Mwhere
M: MakeWriter<'a>,
impl<'a, M> MakeWriterExt<'a> for Mwhere
M: MakeWriter<'a>,
Source§fn with_max_level(self, level: Level) -> WithMaxLevel<Self>where
Self: Sized,
fn with_max_level(self, level: Level) -> WithMaxLevel<Self>where
Self: Sized,
fmt
and std
only.self
and returns a MakeWriter
that will only write output
for events at or below the provided verbosity Level
. For instance,
Level::TRACE
is considered to be _more verbosethan
Level::INFO`. Read moreSource§fn with_min_level(self, level: Level) -> WithMinLevel<Self>where
Self: Sized,
fn with_min_level(self, level: Level) -> WithMinLevel<Self>where
Self: Sized,
fmt
and std
only.self
and returns a MakeWriter
that will only write output
for events at or above the provided verbosity Level
. Read moreSource§fn with_filter<F>(self, filter: F) -> WithFilter<Self, F>
fn with_filter<F>(self, filter: F) -> WithFilter<Self, F>
fmt
and std
only.self
with a predicate that takes a span or event’s Metadata
and returns a bool
. The returned MakeWriter
’s
MakeWriter::make_writer_for
method will check the predicate to
determine if a writer should be produced for a given span or event. Read moreSource§fn and<B>(self, other: B) -> Tee<Self, B> ⓘ
fn and<B>(self, other: B) -> Tee<Self, B> ⓘ
fmt
and std
only.self
with another type implementing MakeWriter
, returning
a new MakeWriter
that produces writers that write to both
outputs. Read moreSource§fn or_else<W, B>(self, other: B) -> OrElse<Self, B>where
Self: MakeWriter<'a, Writer = OptionalWriter<W>> + Sized,
B: MakeWriter<'a> + Sized,
W: Write,
fn or_else<W, B>(self, other: B) -> OrElse<Self, B>where
Self: MakeWriter<'a, Writer = OptionalWriter<W>> + Sized,
B: MakeWriter<'a> + Sized,
W: Write,
fmt
and std
only.self
with another type implementing MakeWriter
, returning
a new MakeWriter
that calls other
’s make_writer
if self
’s
make_writer
returns OptionalWriter::none
. Read moreSource§impl<T> WithSubscriber for T
impl<T> WithSubscriber for T
Source§fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
Source§fn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
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: 1 byte