Files

28 lines
917 B
Rust

use std::{path::PathBuf, process::Command};
#[test]
fn contract_check_is_independent_of_current_working_directory() {
let directory =
std::env::temp_dir().join(format!("crank-metrics-contract-{}", std::process::id()));
std::fs::create_dir_all(&directory).unwrap();
let output = Command::new(env!("CARGO_BIN_EXE_crank-metrics-contract"))
.arg("--check")
.current_dir(&directory)
.output()
.unwrap();
std::fs::remove_dir_all(&directory).ok();
assert!(
output.status.success(),
"{}",
String::from_utf8_lossy(&output.stderr)
);
assert!(String::from_utf8_lossy(&output.stdout).contains("metrics_contract_ok"));
}
#[test]
fn snapshot_path_is_resolved_from_the_crate_manifest() {
let path = PathBuf::from(env!("CARGO_MANIFEST_DIR"))
.join("../../docs/schemas/metrics-registry-v1.json");
assert!(path.is_file());
}