From de13dd6a7b84013b3fe63a28438e296c8a739ef6 Mon Sep 17 00:00:00 2001 From: Kiyomichi Kosaka Date: Wed, 21 Dec 2022 14:00:01 +0000 Subject: [PATCH] Improve test cleanup by using scopeguard. --- Cargo.toml | 1 + src/main.rs | 4 ++-- src/structs.rs | 23 +++++++++++++++-------- test_dump | 3 --- test_init | 3 --- test_pb | 2 -- test_pb_out | 1 - 7 files changed, 18 insertions(+), 19 deletions(-) delete mode 100644 test_dump delete mode 100644 test_init delete mode 100755 test_pb delete mode 100644 test_pb_out diff --git a/Cargo.toml b/Cargo.toml index 403ee32..858d3ff 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -21,3 +21,4 @@ base64 = "0.20.0" rpassword = "7.2.0" shlex = "1.1.0" shellexpand = "3.0.0" +scopeguard = "1.1.0" diff --git a/src/main.rs b/src/main.rs index a1c661e..7fb95b3 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,5 +1,5 @@ -#[macro_use] -extern crate lazy_static; +#[macro_use] extern crate lazy_static; +#[macro_use(defer)] extern crate scopeguard; mod lk; mod parser; diff --git a/src/structs.rs b/src/structs.rs index 9b029d5..308e7b2 100644 --- a/src/structs.rs +++ b/src/structs.rs @@ -323,16 +323,23 @@ mod tests { writeln!(writer, "#!/bin/sh\ncat >test_pb_out").expect("write"); } - #[allow(unused_must_use)] - { - std::fs::remove_file("test_history"); - std::fs::remove_file("test_init"); - std::fs::remove_file("test_dump"); - std::fs::remove_file("test_correct"); - std::fs::remove_file("test_pb"); - std::fs::remove_file("test_pb_out"); + fn clear_test_files() { + #[allow(unused_must_use)] + { + std::fs::remove_file("test_history"); + std::fs::remove_file("test_init"); + std::fs::remove_file("test_dump"); + std::fs::remove_file("test_correct"); + std::fs::remove_file("test_pb"); + std::fs::remove_file("test_pb_out"); + } } + defer! { + clear_test_files(); + } + + clear_test_files(); create_init(); create_pb(); diff --git a/test_dump b/test_dump deleted file mode 100644 index 3ec91dc..0000000 --- a/test_dump +++ /dev/null @@ -1,3 +0,0 @@ -add t1 R 99 2022-10-10 -add t2 R 99 2022-10-10 test ^t1 -add t3 R 99 2022-10-10 aoeu ^t2 diff --git a/test_init b/test_init deleted file mode 100644 index e3de464..0000000 --- a/test_init +++ /dev/null @@ -1,3 +0,0 @@ -add t1 r 99 2022-10-10 -add t2 r 99 2022-10-10 test ^t1 -add t3 r 99 2022-10-10 ^t2 aoeu diff --git a/test_pb b/test_pb deleted file mode 100755 index fd543f5..0000000 --- a/test_pb +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -cat >test_pb_out diff --git a/test_pb_out b/test_pb_out deleted file mode 100644 index a8a65cf..0000000 --- a/test_pb_out +++ /dev/null @@ -1 +0,0 @@ -fief gild sits can un very \ No newline at end of file