Cover health log trace selection
ci / test (push) Waiting to run
ci / fuzz-smoke (push) Waiting to run
ci / windows-client (push) Waiting to run
ci / package-release (linux-x86_64, ubuntu-latest) (push) Waiting to run
ci / package-release (macos-aarch64, macos-14) (push) Waiting to run
ci / package-release (macos-x86_64, macos-13) (push) Waiting to run
ci / package-release (windows-x86_64, windows-latest) (push) Waiting to run
ci / publish-gitea-release (push) Blocked by required conditions
ci / remote-bench (push) Waiting to run

This commit is contained in:
DuProcess
2026-07-12 21:21:36 -04:00
parent e061b11974
commit d883e1cdb2
+30
View File
@@ -11007,6 +11007,36 @@ mod tests {
assert_eq!(report.reconnect_none_events, 1);
}
#[test]
fn trace_report_prefers_newer_health_log_over_stale_trace_file() {
let dir = tempfile::tempdir().unwrap();
let root = dir.path().join("trace");
let stale_trace = root.join("client-palav-1-1.log");
let health = root.join("health.log");
fs::create_dir_all(&root).unwrap();
fs::write(
&stale_trace,
"ts_ms=10 pid=1 event=client.start version=old\n",
)
.unwrap();
std::thread::sleep(Duration::from_millis(20));
fs::write(
&health,
concat!(
"ts_ms=20 pid=2 event=client.start version=new\n",
"ts_ms=21 pid=2 event=client.reconnect_none\n",
),
)
.unwrap();
let selected = newest_client_trace_path_from(&root, Some(health.clone()))
.unwrap()
.expect("newest client trace");
assert_eq!(selected, health);
let report = summarize_trace_file(&selected, 10).unwrap();
assert_eq!(report.reconnect_none_events, 1);
}
#[test]
fn health_log_start_markers_only_for_connect_runs() {
assert!(should_health_log_client_start(None));