//! Help text of the built `smith` binary, pinned as snapshots //! (`SMH-SPEC-SPEC0001`, Interface modes). //! //! Selection variables are removed: clap prints their current values in //! `[env: …]`, which would leak the caller's environment into the snapshot. use assert_cmd::Command; fn help(args: &[&str]) -> String { let output = Command::cargo_bin("smith") .unwrap() .args(args) .env_remove("SMITH_PROVIDER") .env_remove("SMITH_MODEL") .env_remove("SMITH_BASE_URL") .env_remove("CLICOLOR_FORCE") .output() .unwrap(); assert!(output.status.success(), "{output:?}"); assert!(output.stderr.is_empty(), "{output:?}"); String::from_utf8(output.stdout).unwrap() } #[test] fn help_top_level() { insta::assert_snapshot!(help(&["--help"])); } #[test] fn help_eval() { insta::assert_snapshot!(help(&["eval", "--help"])); }