test(cli): add tests for interrupted continuous mode summary
This commit is contained in:
1 parent
67ef912ba0
commit
9adab6882d
1 file changed
+30
@@ -366,6 +366,14 @@ mod shutdown_tests {
|
|||||||
assert!(!should_drain_final(true, false));
|
assert!(!should_drain_final(true, false));
|
||||||
assert!(should_drain_final(false, false));
|
assert!(should_drain_final(false, false));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn final_summary_gate_prints_finite_or_interrupted_continuous() {
|
||||||
|
assert!(should_print_final_summary(false, false));
|
||||||
|
assert!(should_print_final_summary(false, true));
|
||||||
|
assert!(!should_print_final_summary(true, false));
|
||||||
|
assert!(should_print_final_summary(true, true));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(all(test, feature = "stats"))]
|
#[cfg(all(test, feature = "stats"))]
|
||||||
@@ -495,6 +503,28 @@ mod tests {
|
|||||||
assert!(out.is_empty());
|
assert!(out.is_empty());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn continuous_interrupted_output_prints_bounded_summary_when_enabled() {
|
||||||
|
let mut stats = StatsCollector::new(StatsConfig::continuous());
|
||||||
|
let mut out = Vec::new();
|
||||||
|
{
|
||||||
|
let mut output = EventOutput {
|
||||||
|
mode: irtt_cli::OutputMode::Human,
|
||||||
|
human_options: HumanOutputOptions::default(),
|
||||||
|
print_final_summary: true,
|
||||||
|
out: &mut out,
|
||||||
|
stats: &mut stats,
|
||||||
|
};
|
||||||
|
output.print_event(&reply_event(1, 1200)).unwrap();
|
||||||
|
output.print_summary().unwrap();
|
||||||
|
}
|
||||||
|
|
||||||
|
let rendered = String::from_utf8(out).unwrap();
|
||||||
|
assert!(rendered.contains("irtt-rs summary"));
|
||||||
|
assert!(rendered.contains("packets:"));
|
||||||
|
assert!(rendered.contains("received=1"));
|
||||||
|
}
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn human_output_prints_ipdv_from_stats_update() {
|
fn human_output_prints_ipdv_from_stats_update() {
|
||||||
let events = [reply_event(0, 1200), reply_event(1, 1250)];
|
let events = [reply_event(0, 1200), reply_event(1, 1250)];
|
||||||
|
|||||||
Reference in new issue
Block a user