From 23802d360f97164f27251576a3a6b019b4911bb1 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Sun, 16 Aug 2026 20:11:53 +0200 Subject: [PATCH] add test for success close volume --- src/backupmount | 6 +++++- tests/backupmount_tests.bats | 25 +++++++++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/src/backupmount b/src/backupmount index 630130a..10b7a3b 100755 --- a/src/backupmount +++ b/src/backupmount @@ -112,7 +112,7 @@ mount_device() || errlog "missing backup path in $CONFIG_FILE" \ || return $? - cryptsetupargs=("open" + local cryptsetupargs=("open" "--key-file $key" "$device" "$volume") @@ -170,6 +170,10 @@ umount_backup() rmdir "$backup_path" \ || errlog "could not delete directory $backup_path" \ || return $? + + echo "ℹ️ INFO: close volume $volume" + local cryptsetupargs=("close" "$volume") + cryptsetup "${cryptsetupargs[@]}" } main() diff --git a/tests/backupmount_tests.bats b/tests/backupmount_tests.bats index 12b4b91..6fdc360 100755 --- a/tests/backupmount_tests.bats +++ b/tests/backupmount_tests.bats @@ -522,6 +522,9 @@ teardown() { umount() { return 0 } + cryptsetup() { + return 0 + } run main "umount" @@ -548,4 +551,26 @@ teardown() { assert_line --index 1 "ℹ️ INFO: umount backup path build/test" assert_line --index 2 "ℹ️ INFO: remove backup directory build/test" assert_line --index 3 "❌ ERROR: could not delete directory build/test" +} + +# bats test_tags=backupmount:umount +@test "success close volume with cryptsetup" { + umount() { + return 0 + } + rmdir() { + return 0 + } + + run main "umount" + + assert_success + assert_line --index 0 "⭐ START: backupmount" + assert_line --index 1 "ℹ️ INFO: umount backup path build/test" + assert_line --index 2 "ℹ️ INFO: remove backup directory build/test" + assert_line --index 3 "ℹ️ INFO: close volume luks-crypt-volume" + assert_line --index 4 "✅ SUCCESS: backupmount" + assert_equal "$(awk 'NR==1 {print; exit}' "$CRYPTSETUP_LOG")" "2" + assert_equal "$(awk 'NR==2 {print; exit}' "$CRYPTSETUP_LOG")" "close" + assert_equal "$(awk 'NR==3 {print; exit}' "$CRYPTSETUP_LOG")" "luks-crypt-volume" } \ No newline at end of file -- 2.47.3