pub struct TableReporter { /* private fields */ }Expand description
A reporter that displays test results in a summary table after all tests complete.
This reporter buffers all test results and displays them in a formatted table at the end of execution. Useful for getting an overview of all test results without the noise of real-time output.
§Features
- Summary table: Clean tabular output after test completion
- Project ordering: Results ordered by project configuration
- Emoji indicators: Visual success/failure indicators
- Modern styling: Attractive table borders and formatting
§Examples
ⓘ
use tanu_core::{Runner, reporter::TableReporter};
let mut runner = Runner::new();
runner.add_reporter(TableReporter::new(false)); // No HTTP details in table§Output Format
┌─────────┬────────┬──────────────┬────────┐
│ Project │ Module │ Test │ Result │
├─────────┼────────┼──────────────┼────────┤
│ staging │ api │ health_check │ 🟢 │
│ staging │ auth │ login │ 🔴 │
│ prod │ api │ status │ 🟢 │
└─────────┴────────┴──────────────┴────────┘Implementations§
Source§impl TableReporter
impl TableReporter
Trait Implementations§
Source§impl Reporter for TableReporter
impl Reporter for TableReporter
fn run<'life0, 'async_trait>(
&'life0 mut self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn on_end<'life0, 'async_trait>(
&'life0 mut self,
project_name: String,
module_name: String,
test_name: String,
test: Test,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn on_end<'life0, 'async_trait>(
&'life0 mut self,
project_name: String,
module_name: String,
test_name: String,
test: Test,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Called when a test case ends.
Source§fn on_summary<'life0, 'async_trait>(
&'life0 mut self,
summary: TestSummary,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn on_summary<'life0, 'async_trait>(
&'life0 mut self,
summary: TestSummary,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Called when all tests complete with summary statistics.
Source§fn on_start<'life0, 'async_trait>(
&'life0 mut self,
_project: String,
_module: String,
_test_name: String,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
fn on_start<'life0, 'async_trait>(
&'life0 mut self,
_project: String,
_module: String,
_test_name: String,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
Called when a test case starts.
Source§fn on_check<'life0, 'async_trait>(
&'life0 mut self,
_project: String,
_module: String,
_test_name: String,
_check: Box<Check>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
fn on_check<'life0, 'async_trait>(
&'life0 mut self,
_project: String,
_module: String,
_test_name: String,
_check: Box<Check>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
Called when a check macro is used.
Source§fn on_call<'life0, 'async_trait>(
&'life0 mut self,
_project: String,
_module: String,
_test_name: String,
_log: CallLog,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
fn on_call<'life0, 'async_trait>(
&'life0 mut self,
_project: String,
_module: String,
_test_name: String,
_log: CallLog,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: Send + 'async_trait,
'life0: 'async_trait,
Called when a protocol call (HTTP, gRPC, etc.) is made.
Auto Trait Implementations§
impl Freeze for TableReporter
impl RefUnwindSafe for TableReporter
impl Send for TableReporter
impl Sync for TableReporter
impl Unpin for TableReporter
impl UnwindSafe for TableReporter
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