use super::doctor::*;
#[test]
fn doctor_fix_with_valid_config() {
let dir = tempfile::tempdir().unwrap();
let file = dir.path().join("forjar.yaml");
std::fs::write(
&file,
"version: \"1.0\"\nname: fix-test\nmachines:\n m:\n hostname: m\n addr: 127.0.0.1\nresources: {}\n",
).unwrap();
let result = cmd_doctor(Some(&file), false, true);
assert!(result.is_ok());
}
#[test]
fn doctor_fix_mode_runs_without_crash() {
let dir = tempfile::tempdir().unwrap();
let file = dir.path().join("forjar.yaml");
std::fs::write(
&file,
"version: \"1.0\"\nname: fix-mode\nmachines:\n m:\n hostname: m\n addr: 127.0.0.1\nresources: {}\n",
).unwrap();
let _result = cmd_doctor(Some(&file), false, true);
}
#[test]
fn doctor_fix_json_mode() {
let dir = tempfile::tempdir().unwrap();
let file = dir.path().join("forjar.yaml");
std::fs::write(
&file,
"version: \"1.0\"\nname: fix-json\nmachines:\n m:\n hostname: m\n addr: 127.0.0.1\nresources: {}\n",
).unwrap();
let _result = cmd_doctor(Some(&file), true, true);
}
#[test]
fn doctor_json_with_fix_no_cwd() {
let dir = tempfile::tempdir().unwrap();
let file = dir.path().join("forjar.yaml");
std::fs::write(
&file,
"version: \"1.0\"\nname: json-fix\nmachines:\n m:\n hostname: m\n addr: 127.0.0.1\nresources: {}\n",
).unwrap();
let _result = cmd_doctor(Some(&file), true, true);
}
#[test]
fn doctor_network_local_machine() {
let dir = tempfile::tempdir().unwrap();
let file = dir.path().join("forjar.yaml");
std::fs::write(
&file,
r#"version: "1.0"
name: net-test
machines:
local:
hostname: local
addr: 127.0.0.1
resources:
f:
type: file
machine: local
path: /tmp/test
content: test
"#,
)
.unwrap();
let result = cmd_doctor_network(Some(&file), false);
assert!(result.is_ok());
}
#[test]
fn doctor_network_json() {
let dir = tempfile::tempdir().unwrap();
let file = dir.path().join("forjar.yaml");
std::fs::write(
&file,
r#"version: "1.0"
name: net-json
machines:
local:
hostname: local
addr: 127.0.0.1
resources:
f:
type: file
machine: local
path: /tmp/test
content: test
"#,
)
.unwrap();
let result = cmd_doctor_network(Some(&file), true);
assert!(result.is_ok());
}