diff options
Diffstat (limited to 'cli/tools/test/reporters/mod.rs')
-rw-r--r-- | cli/tools/test/reporters/mod.rs | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/cli/tools/test/reporters/mod.rs b/cli/tools/test/reporters/mod.rs new file mode 100644 index 000000000..a3270ad3e --- /dev/null +++ b/cli/tools/test/reporters/mod.rs @@ -0,0 +1,53 @@ +// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license. + +use super::*; + +mod compound; +mod junit; +mod pretty; + +pub use compound::CompoundTestReporter; +pub use junit::JunitTestReporter; +pub use pretty::PrettyTestReporter; + +pub trait TestReporter { + fn report_register(&mut self, description: &TestDescription); + fn report_plan(&mut self, plan: &TestPlan); + fn report_wait(&mut self, description: &TestDescription); + fn report_output(&mut self, output: &[u8]); + fn report_result( + &mut self, + description: &TestDescription, + result: &TestResult, + elapsed: u64, + ); + fn report_uncaught_error(&mut self, origin: &str, error: Box<JsError>); + fn report_step_register(&mut self, description: &TestStepDescription); + fn report_step_wait(&mut self, description: &TestStepDescription); + fn report_step_result( + &mut self, + desc: &TestStepDescription, + result: &TestStepResult, + elapsed: u64, + tests: &IndexMap<usize, TestDescription>, + test_steps: &IndexMap<usize, TestStepDescription>, + ); + fn report_summary( + &mut self, + elapsed: &Duration, + tests: &IndexMap<usize, TestDescription>, + test_steps: &IndexMap<usize, TestStepDescription>, + ); + fn report_sigint( + &mut self, + tests_pending: &HashSet<usize>, + tests: &IndexMap<usize, TestDescription>, + test_steps: &IndexMap<usize, TestStepDescription>, + ); + fn flush_report( + &mut self, + elapsed: &Duration, + tests: &IndexMap<usize, TestDescription>, + test_steps: &IndexMap<usize, TestStepDescription>, + ) -> anyhow::Result<()>; +} |