Phase 4: Formulardateien und Konvertierung
This commit is contained in:
24
crates/tb-cli/tests/convert_frm.rs
Normal file
24
crates/tb-cli/tests/convert_frm.rs
Normal file
@@ -0,0 +1,24 @@
|
||||
use std::process::Command;
|
||||
|
||||
#[test]
|
||||
fn conversion_failure_leaves_no_output() {
|
||||
let dir = std::env::temp_dir().join(format!("tbc-convert-{}", std::process::id()));
|
||||
std::fs::create_dir_all(&dir).unwrap();
|
||||
let input = dir.join("broken.frm");
|
||||
let output = dir.join("converted.frm");
|
||||
std::fs::write(&input, b"not a form").unwrap();
|
||||
|
||||
let result = Command::new(env!("CARGO_BIN_EXE_tbc"))
|
||||
.args([
|
||||
"convert-frm",
|
||||
input.to_str().unwrap(),
|
||||
output.to_str().unwrap(),
|
||||
])
|
||||
.output()
|
||||
.unwrap();
|
||||
|
||||
assert!(!result.status.success());
|
||||
assert!(!output.exists());
|
||||
assert!(String::from_utf8_lossy(&result.stderr).contains("0x0000"));
|
||||
std::fs::remove_dir_all(dir).unwrap();
|
||||
}
|
||||
Reference in New Issue
Block a user