mod harness;
use harness::TestRepo;
const CONFIG: i32 = 2;
#[test]
fn dropping_the_required_flag_is_caught() {
let repo = TestRepo::init();
repo.init_xcrypt();
repo.write_xcrypt_config("secrets/\n");
repo.git_ok(["config", "filter.git-xcrypt.required", "false"]);
let output = repo.xcrypt(["status"]);
assert_eq!(output.status.code(), Some(CONFIG));
assert!(
String::from_utf8_lossy(&output.stdout).contains("filter.git-xcrypt.required"),
"{}",
String::from_utf8_lossy(&output.stdout)
);
}
#[test]
fn removing_the_catch_all_line_is_caught() {
let repo = TestRepo::init();
repo.init_xcrypt();
repo.write_xcrypt_config("secrets/\n");
repo.write_file(".gitattributes", b"# mine only\n");
let output = repo.xcrypt(["status"]);
assert_eq!(output.status.code(), Some(CONFIG));
assert!(
String::from_utf8_lossy(&output.stdout).contains("* filter=git-xcrypt"),
"{}",
String::from_utf8_lossy(&output.stdout)
);
}