//! Contract: `--help` documents exit code 0 (success).
use std::path::PathBuf;
use std::process::Command;
fn binary() -> PathBuf {
PathBuf::from(env!("CARGO_BIN_EXE_keyhog"))
}
#[test]
fn help_documents_exit_code_zero() {
let output = Command::new(binary()).arg("--help").output().expect("spawn");
let combined = format!("{}{}", String::from_utf8_lossy(&output.stdout), String::from_utf8_lossy(&output.stderr));
assert!(combined.contains("0 Success") || combined.contains("0 Success"), "help must document exit 0; got: {combined}");
}