use std::process::Command;
#[test]
fn test_client_help() {
let client_bin = env!("CARGO_BIN_EXE_opcda-bridge-client");
let output = Command::new(client_bin).arg("--help").output().unwrap();
assert!(output.status.success());
let stdout = String::from_utf8_lossy(&output.stdout);
assert!(stdout.contains("OPC DA bridge client"));
}
#[test]
fn test_client_run_exercises_full_run_path_on_connection_failure() {
let client_bin = env!("CARGO_BIN_EXE_opcda-bridge-client");
let output = Command::new(client_bin)
.args(["--host", "127.0.0.1:1", "--json", "servers"])
.output()
.unwrap();
assert!(!output.status.success());
let stderr = String::from_utf8_lossy(&output.stderr);
let value: serde_json::Value = serde_json::from_str(stderr.trim()).unwrap();
assert!(value["error"].is_string());
}