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
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:
@@ -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));
|
||||
|
||||
Reference in New Issue
Block a user