From 57e9e437b25d40767eb2ec0722ea68af3b215967 Mon Sep 17 00:00:00 2001 From: Bastian Dehn Date: Sun, 9 Aug 2026 11:11:35 +0200 Subject: [PATCH] change tests into build test folder --- src/config-example.yaml | 4 +- tests/backup_tests.bats | 246 ++++++++++++++++++++-------------------- 2 files changed, 125 insertions(+), 125 deletions(-) diff --git a/src/config-example.yaml b/src/config-example.yaml index 12a1640..4dac0ea 100644 --- a/src/config-example.yaml +++ b/src/config-example.yaml @@ -1,7 +1,7 @@ -backup_path: build +backup_path: build/test backup_name: backup backup_count: 15 -backup_logfile: build/backup.log +backup_logfile: build/test/backup.log machines: testpc1: diff --git a/tests/backup_tests.bats b/tests/backup_tests.bats index 66fdf49..fdd3f1c 100755 --- a/tests/backup_tests.bats +++ b/tests/backup_tests.bats @@ -6,7 +6,7 @@ setup() { export TESTMODE="ON" export NOCOLOR="ON" export CONFIG_FILE="src/config-example.yaml" - export RSYNC_LOG="build/rsync.log" + export RSYNC_LOG="build/test/rsync.log" export RSYNC_LOG_RUNS="0" source src/backup date() { @@ -23,7 +23,7 @@ setup() { } teardown() { - rm --recursive --force "build/2000-01-01_01_backup" + rm --recursive --force "build/test" rm --recursive --force "$RSYNC_LOG" unset TESTMODE unset NOCOLOR @@ -199,7 +199,7 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 5 "💾 START: backup run" @@ -214,7 +214,7 @@ teardown() { : } find() { - echo "build/2000-01-01_01_backup" + echo "build/test/2000-01-01_01_backup" } backup_machines() { : @@ -227,10 +227,10 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" - assert_line --index 4 "ℹ️ INFO: last backup dir path build/2000-01-01_01_backup" + assert_line --index 4 "ℹ️ INFO: last backup dir path build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" assert_line --index 7 "ℹ️ INFO: backup count: 1" assert_line --index 8 "🏁 FINISH: backup run" @@ -253,7 +253,7 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" @@ -265,7 +265,7 @@ teardown() { # bats test_tags=backup:info @test "success new backup folder with number 02 info" { - mkdir --parents "build/2000-01-01_01_backup" + mkdir --parents "build/test/2000-01-01_01_backup" create_backup_dir() { : } @@ -280,16 +280,16 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" - assert_line --index 4 "ℹ️ INFO: last backup dir path build/2000-01-01_01_backup" + assert_line --index 4 "ℹ️ INFO: last backup dir path build/test/2000-01-01_01_backup" assert_line --index 5 "ℹ️ INFO: backup folder 2000-01-01_02_backup" assert_line --index 6 "💾 START: backup run" assert_line --index 7 "ℹ️ INFO: backup count: 1" assert_line --index 8 "🏁 FINISH: backup run" assert_line --index 9 "✅ SUCCESS: backup" - rmdir "build/2000-01-01_01_backup" + rmdir "build/test/2000-01-01_01_backup" } # bats test_tags=backup:info @@ -305,21 +305,21 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 5 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 5 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" assert_line --index 7 "ℹ️ INFO: backup count: 1" assert_line --index 8 "🏁 FINISH: backup run" assert_line --index 9 "✅ SUCCESS: backup" - [ -d "build/2000-01-01_01_backup" ] + [ -d "build/test/2000-01-01_01_backup" ] } # bats test_tags=backup:info @test "success create backup folder latest number" { - mkdir --parents "build/2000-01-01_35_backup" + mkdir --parents "build/test/2000-01-01_35_backup" backup_machines() { : } @@ -331,24 +331,24 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" - assert_line --index 4 "ℹ️ INFO: last backup dir path build/2000-01-01_35_backup" + assert_line --index 4 "ℹ️ INFO: last backup dir path build/test/2000-01-01_35_backup" assert_line --index 5 "ℹ️ INFO: backup folder 2000-01-01_36_backup" - assert_line --index 6 "ℹ️ INFO: create folder build/2000-01-01_36_backup" + assert_line --index 6 "ℹ️ INFO: create folder build/test/2000-01-01_36_backup" assert_line --index 7 "💾 START: backup run" assert_line --index 8 "ℹ️ INFO: backup count: 2" assert_line --index 9 "🏁 FINISH: backup run" assert_line --index 10 "✅ SUCCESS: backup" - [ -d "build/2000-01-01_36_backup" ] - rmdir "build/2000-01-01_35_backup" - rmdir "build/2000-01-01_36_backup" + [ -d "build/test/2000-01-01_36_backup" ] + rmdir "build/test/2000-01-01_35_backup" + rmdir "build/test/2000-01-01_36_backup" } # bats test_tags=backup:info @test "success create backup folder latest number with other date" { - mkdir --parents "build/1999-12-31_35_backup" + mkdir --parents "build/test/1999-12-31_35_backup" backup_machines() { : } @@ -360,19 +360,19 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" - assert_line --index 4 "ℹ️ INFO: last backup dir path build/1999-12-31_35_backup" + assert_line --index 4 "ℹ️ INFO: last backup dir path build/test/1999-12-31_35_backup" assert_line --index 5 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 6 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 6 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 7 "💾 START: backup run" assert_line --index 8 "ℹ️ INFO: backup count: 2" assert_line --index 9 "🏁 FINISH: backup run" assert_line --index 10 "✅ SUCCESS: backup" - [ -d "build/2000-01-01_01_backup" ] - rmdir "build/1999-12-31_35_backup" - rmdir "build/2000-01-01_01_backup" + [ -d "build/test/2000-01-01_01_backup" ] + rmdir "build/test/1999-12-31_35_backup" + rmdir "build/test/2000-01-01_01_backup" } # bats test_tags=backup:info @@ -388,21 +388,21 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 5 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 5 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" - assert_line --index 7 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc1" - assert_line --index 8 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc2" - assert_line --index 9 "ℹ️ INFO: create directory build/2000-01-01_01_backup/onlylocal" + assert_line --index 7 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc1" + assert_line --index 8 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc2" + assert_line --index 9 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/onlylocal" assert_line --index 10 "ℹ️ INFO: backup count: 1" assert_line --index 11 "🏁 FINISH: backup run" assert_line --index 12 "✅ SUCCESS: backup" - [ -d "build/2000-01-01_01_backup" ] - [ -d "build/2000-01-01_01_backup/testpc1" ] - [ -d "build/2000-01-01_01_backup/testpc2" ] + [ -d "build/test/2000-01-01_01_backup" ] + [ -d "build/test/2000-01-01_01_backup/testpc1" ] + [ -d "build/test/2000-01-01_01_backup/testpc2" ] } # bats test_tags=backup:info @@ -417,24 +417,24 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 5 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 5 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" - assert_line --index 7 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc1" + assert_line --index 7 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc1" assert_line --index 8 "################################################################################" assert_line --index 9 "ℹ️ INFO: machine ${LIGHTPURPLE}testpc1${RESET}; path ${YELLOW}/etc${RESET}" assert_line --index 10 "################################################################################" assert_line --index 11 "################################################################################" assert_line --index 12 "ℹ️ INFO: machine ${LIGHTPURPLE}testpc1${RESET}; path ${YELLOW}/home/user${RESET}" assert_line --index 13 "################################################################################" - assert_line --index 14 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc2" + assert_line --index 14 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc2" assert_line --index 15 "################################################################################" assert_line --index 16 "ℹ️ INFO: machine ${LIGHTPURPLE}testpc2${RESET}; path ${YELLOW}/home/other${RESET}" assert_line --index 17 "################################################################################" - assert_line --index 18 "ℹ️ INFO: create directory build/2000-01-01_01_backup/onlylocal" + assert_line --index 18 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/onlylocal" assert_line --index 19 "################################################################################" assert_line --index 20 "ℹ️ INFO: machine ${LIGHTPURPLE}onlylocal${RESET}; path ${YELLOW}/home/local${RESET}" assert_line --index 21 "################################################################################" @@ -447,7 +447,7 @@ teardown() { @test "failure backup machine pathes is null" { yq() { echo '{ - "backup_path": "build", + "backup_path": "build/test", "backup_name": "backup", "backup_count": 15, "machines": { @@ -460,13 +460,13 @@ teardown() { assert_failure assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 5 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 5 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" - assert_line --index 7 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc1" + assert_line --index 7 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc1" assert_line --index 8 "❌ ERROR: missing pathes for machine testpc1" } @@ -474,7 +474,7 @@ teardown() { @test "failure backup machine path no remote user" { yq() { echo '{ - "backup_path": "build", + "backup_path": "build/test", "backup_name": "backup", "backup_count": 15, "machines": { @@ -489,13 +489,13 @@ teardown() { assert_failure assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 5 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 5 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" - assert_line --index 7 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc1" + assert_line --index 7 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc1" assert_line --index 8 "################################################################################" assert_line --index 9 "ℹ️ INFO: machine ${LIGHTPURPLE}testpc1${RESET}; path ${YELLOW}/home/user${RESET}" assert_line --index 10 "❌ ERROR: missing remote user for testpc1" @@ -505,7 +505,7 @@ teardown() { @test "failure backup machine path no host" { yq() { echo '{ - "backup_path": "build", + "backup_path": "build/test", "backup_name": "backup", "backup_count": 15, "machines": { @@ -521,13 +521,13 @@ teardown() { assert_failure assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 5 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 5 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" - assert_line --index 7 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc1" + assert_line --index 7 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc1" assert_line --index 8 "################################################################################" assert_line --index 9 "ℹ️ INFO: machine ${LIGHTPURPLE}testpc1${RESET}; path ${YELLOW}/home/user${RESET}" assert_line --index 10 "❌ ERROR: missing host for testpc1" @@ -537,7 +537,7 @@ teardown() { @test "failure backup machine path no port" { yq() { echo '{ - "backup_path": "build", + "backup_path": "build/test", "backup_name": "backup", "backup_count": 15, "machines": { @@ -554,13 +554,13 @@ teardown() { assert_failure assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 5 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 5 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" - assert_line --index 7 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc1" + assert_line --index 7 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc1" assert_line --index 8 "################################################################################" assert_line --index 9 "ℹ️ INFO: machine ${LIGHTPURPLE}testpc1${RESET}; path ${YELLOW}/home/user${RESET}" assert_line --index 10 "❌ ERROR: missing port for testpc1" @@ -572,13 +572,13 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 5 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 5 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" - assert_line --index 7 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc1" + assert_line --index 7 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc1" assert_line --index 8 "################################################################################" assert_line --index 9 "ℹ️ INFO: machine ${LIGHTPURPLE}testpc1${RESET}; path ${YELLOW}/etc${RESET}" assert_line --index 10 "ℹ️ INFO: machine ${LIGHTPURPLE}testpc1${RESET}; excludes /home/user/.cache /home/user/.local" @@ -590,7 +590,7 @@ teardown() { @test "success backup machine path without excludes" { yq() { echo '{ - "backup_path": "build", + "backup_path": "build/test", "backup_name": "backup", "backup_count": 15, "machines": { @@ -610,13 +610,13 @@ teardown() { assert_success assert_line --index 0 "⭐ START: backup" - assert_line --index 1 "ℹ️ INFO: backup path build" + assert_line --index 1 "ℹ️ INFO: backup path build/test" assert_line --index 2 "ℹ️ INFO: backup name backup" assert_line --index 3 "ℹ️ INFO: backup count 15" assert_line --index 4 "ℹ️ INFO: backup folder 2000-01-01_01_backup" - assert_line --index 5 "ℹ️ INFO: create folder build/2000-01-01_01_backup" + assert_line --index 5 "ℹ️ INFO: create folder build/test/2000-01-01_01_backup" assert_line --index 6 "💾 START: backup run" - assert_line --index 7 "ℹ️ INFO: create directory build/2000-01-01_01_backup/testpc1" + assert_line --index 7 "ℹ️ INFO: create directory build/test/2000-01-01_01_backup/testpc1" assert_line --index 8 "################################################################################" assert_line --index 9 "ℹ️ INFO: machine ${LIGHTPURPLE}testpc1${RESET}; path ${YELLOW}/home/user${RESET}" assert_line --index 10 "################################################################################" @@ -646,7 +646,7 @@ teardown() { assert_equal "$(awk 'NR==10 {print; exit}' "$RSYNC_LOG")" "--exclude=/home/user/.local" assert_equal "$(awk 'NR==11 {print; exit}' "$RSYNC_LOG")" "--rsh=\"ssh -p 22\"" assert_equal "$(awk 'NR==12 {print; exit}' "$RSYNC_LOG")" "backupuser@www.example.com:/etc" - assert_equal "$(awk 'NR==13 {print; exit}' "$RSYNC_LOG")" "build/2000-01-01_01_backup/testpc1" + assert_equal "$(awk 'NR==13 {print; exit}' "$RSYNC_LOG")" "build/test/2000-01-01_01_backup/testpc1" } @@ -668,7 +668,7 @@ teardown() { assert_equal "$(awk 'NR==8 {print; exit}' "$RSYNC_LOG")" "--human-readable" assert_equal "$(awk 'NR==9 {print; exit}' "$RSYNC_LOG")" "--rsh=\"ssh -p 22\"" assert_equal "$(awk 'NR==10 {print; exit}' "$RSYNC_LOG")" "backupuser@www.example.com:/home/other" - assert_equal "$(awk 'NR==11 {print; exit}' "$RSYNC_LOG")" "build/2000-01-01_01_backup/testpc2" + assert_equal "$(awk 'NR==11 {print; exit}' "$RSYNC_LOG")" "build/test/2000-01-01_01_backup/testpc2" } # bats test_tags=backup:rsync @@ -689,12 +689,12 @@ teardown() { assert_equal "$(awk 'NR==8 {print; exit}' "$RSYNC_LOG")" "--human-readable" assert_equal "$(awk 'NR==9 {print; exit}' "$RSYNC_LOG")" "--rsh=\"ssh -p 22\"" assert_equal "$(awk 'NR==10 {print; exit}' "$RSYNC_LOG")" "/home/local" - assert_equal "$(awk 'NR==11 {print; exit}' "$RSYNC_LOG")" "build/2000-01-01_01_backup/onlylocal" + assert_equal "$(awk 'NR==11 {print; exit}' "$RSYNC_LOG")" "build/test/2000-01-01_01_backup/onlylocal" } # bats test_tags=backup:rsync @test "success backup machine path rsync localhost with hard links" { - mkdir --parents "build/1999-12-31_01_backup" + mkdir --parents "build/test/1999-12-31_01_backup" RSYNC_LOG_RUNS="4" run main @@ -711,10 +711,10 @@ teardown() { assert_equal "$(awk 'NR==7 {print; exit}' "$RSYNC_LOG")" "--relative" assert_equal "$(awk 'NR==8 {print; exit}' "$RSYNC_LOG")" "--human-readable" assert_equal "$(awk 'NR==9 {print; exit}' "$RSYNC_LOG")" "--rsh=\"ssh -p 22\"" - assert_equal "$(awk 'NR==10 {print; exit}' "$RSYNC_LOG")" "--link-dest=build/1999-12-31_01_backup/onlylocal" + assert_equal "$(awk 'NR==10 {print; exit}' "$RSYNC_LOG")" "--link-dest=build/test/1999-12-31_01_backup/onlylocal" assert_equal "$(awk 'NR==11 {print; exit}' "$RSYNC_LOG")" "/home/local" - assert_equal "$(awk 'NR==12 {print; exit}' "$RSYNC_LOG")" "build/2000-01-01_01_backup/onlylocal" - rmdir "build/1999-12-31_01_backup" + assert_equal "$(awk 'NR==12 {print; exit}' "$RSYNC_LOG")" "build/test/2000-01-01_01_backup/onlylocal" + rmdir "build/test/1999-12-31_01_backup" } # bats test_tags=backup:rsync @@ -731,21 +731,21 @@ teardown() { # bats test_tags=backup:info,backup:cleanup @test "success show current backup count" { - mkdir --parents "build/1999-12-24_01_backup" - mkdir --parents "build/1999-12-30_01_backup" - mkdir --parents "build/1999-12-31_01_backup" - mkdir --parents "build/2000-01-01_01_backup" + mkdir --parents "build/test/1999-12-24_01_backup" + mkdir --parents "build/test/1999-12-30_01_backup" + mkdir --parents "build/test/1999-12-31_01_backup" + mkdir --parents "build/test/2000-01-01_01_backup" run main assert_success assert_line --index 0 "⭐ START: backup" assert_line --partial "ℹ️ INFO: backup count: 5" - rmdir "build/1999-12-24_01_backup" \ - "build/1999-12-30_01_backup" \ - "build/1999-12-31_01_backup" \ - "build/2000-01-01_01_backup" - rm --recursive --force "build/2000-01-01_02_backup" + rmdir "build/test/1999-12-24_01_backup" \ + "build/test/1999-12-30_01_backup" \ + "build/test/1999-12-31_01_backup" \ + "build/test/2000-01-01_01_backup" + rm --recursive --force "build/test/2000-01-01_02_backup" } # bats test_tags=backup:info,backup:cleanup @@ -762,15 +762,15 @@ teardown() { local num= for i in {1..5}; do num=$(printf "%02d" "$i") - mkdir --parents "build/1999-10-${num}_01_backup" - mkdir --parents "build/1999-11-${num}_01_backup" + mkdir --parents "build/test/1999-10-${num}_01_backup" + mkdir --parents "build/test/1999-11-${num}_01_backup" done for i in {1..3}; do num=$(printf "%02d" "$i") - mkdir --parents "build/1999-12-${num}_01_backup" + mkdir --parents "build/test/1999-12-${num}_01_backup" done - mkdir --parents "build/1999-12-16_01_backup" - mkdir --parents "build/1999-12-24_01_backup" + mkdir --parents "build/test/1999-12-16_01_backup" + mkdir --parents "build/test/1999-12-24_01_backup" run main assert_success @@ -778,11 +778,11 @@ teardown() { assert_line --partial "ℹ️ INFO: current backup count 16" assert_line --partial "ℹ️ INFO: delete backup count 1" assert_line --partial "🗑️ INFO: delete 1999-10-01_01_backup" - [ ! -d build/1999-10-01_01_backup ] - [ -d build/1999-10-02_01_backup ] - [ -d build/1999-12-24_01_backup ] - [ -d build/2000-01-01_01_backup ] - rmdir build/1999-* + [ ! -d build/test/1999-10-01_01_backup ] + [ -d build/test/1999-10-02_01_backup ] + [ -d build/test/1999-12-24_01_backup ] + [ -d build/test/2000-01-01_01_backup ] + rmdir build/test/1999-* } # bats test_tags=backup:info,backup:cleanup @@ -790,15 +790,15 @@ teardown() { local num= for i in {1..5}; do num=$(printf "%02d" "$i") - mkdir --parents "build/1999-10-${num}_01_backup" - mkdir --parents "build/1999-11-${num}_01_backup" + mkdir --parents "build/test/1999-10-${num}_01_backup" + mkdir --parents "build/test/1999-11-${num}_01_backup" done for i in {1..6}; do num=$(printf "%02d" "$i") - mkdir --parents "build/1999-12-${num}_01_backup" + mkdir --parents "build/test/1999-12-${num}_01_backup" done - mkdir --parents "build/1999-12-16_01_backup" - mkdir --parents "build/1999-12-24_01_backup" + mkdir --parents "build/test/1999-12-16_01_backup" + mkdir --parents "build/test/1999-12-24_01_backup" run main assert_success @@ -809,15 +809,15 @@ teardown() { assert_line --partial "🗑️ INFO: delete 1999-10-02_01_backup" assert_line --partial "🗑️ INFO: delete 1999-10-03_01_backup" assert_line --partial "🗑️ INFO: delete 1999-10-04_01_backup" - [ ! -d build/1999-10-01_01_backup ] - [ ! -d build/1999-10-02_01_backup ] - [ ! -d build/1999-10-03_01_backup ] - [ ! -d build/1999-10-04_01_backup ] - [ -d build/1999-10-05_01_backup ] - [ -d build/1999-11-01_01_backup ] - [ -d build/1999-12-24_01_backup ] - [ -d build/2000-01-01_01_backup ] - rmdir build/1999-* + [ ! -d build/test/1999-10-01_01_backup ] + [ ! -d build/test/1999-10-02_01_backup ] + [ ! -d build/test/1999-10-03_01_backup ] + [ ! -d build/test/1999-10-04_01_backup ] + [ -d build/test/1999-10-05_01_backup ] + [ -d build/test/1999-11-01_01_backup ] + [ -d build/test/1999-12-24_01_backup ] + [ -d build/test/2000-01-01_01_backup ] + rmdir build/test/1999-* } # bats test_tags=backup:info,backup:cleanup @@ -825,7 +825,7 @@ teardown() { local num= for i in {1..18}; do num=$(printf "%02d" "$i") - mkdir --parents "build/2000-01-01_${num}_backup" + mkdir --parents "build/test/2000-01-01_${num}_backup" done run main @@ -837,21 +837,21 @@ teardown() { assert_line --partial "🗑️ INFO: delete 2000-01-01_02_backup" assert_line --partial "🗑️ INFO: delete 2000-01-01_03_backup" assert_line --partial "🗑️ INFO: delete 2000-01-01_04_backup" - [ ! -d build/2000-01-01_01_backup ] - [ ! -d build/2000-01-01_02_backup ] - [ ! -d build/2000-01-01_03_backup ] - [ ! -d build/2000-01-01_04_backup ] - [ -d build/2000-01-01_05_backup ] - [ -d build/2000-01-01_06_backup ] - [ -d build/2000-01-01_18_backup ] - [ -d build/2000-01-01_19_backup ] - rm --recursive build/2000-01-01_19_backup - rmdir build/2000-01-01_* + [ ! -d build/test/2000-01-01_01_backup ] + [ ! -d build/test/2000-01-01_02_backup ] + [ ! -d build/test/2000-01-01_03_backup ] + [ ! -d build/test/2000-01-01_04_backup ] + [ -d build/test/2000-01-01_05_backup ] + [ -d build/test/2000-01-01_06_backup ] + [ -d build/test/2000-01-01_18_backup ] + [ -d build/test/2000-01-01_19_backup ] + rm --recursive build/test/2000-01-01_19_backup + rmdir build/test/2000-01-01_* } # bats test_tags=backup:log @test "success no config" { - mkdir --parents build + mkdir --parents build/test run log "$config" assert_success @@ -860,7 +860,7 @@ teardown() { # bats test_tags=backup:log @test "success no log config has no logfile entry" { - mkdir --parents build + mkdir --parents build/test config="{}" run log "$config" @@ -870,8 +870,8 @@ teardown() { write_log_entry() { local type="$1" - mkdir --parents build - touch "build/$type" + mkdir --parents build/test + touch "build/test/$type" local config= config=$(yq '.' "$CONFIG_FILE") get_date_time() { @@ -881,10 +881,10 @@ write_log_entry() { run log "$config" "log entry" assert_success - assert_output "ℹ️ INFO: 2000-01-01T23:30:45+02:00 [$type] log entry -> build/backup.log" - assert_equal "$(cat "build/backup.log")" "2000-01-01T23:30:45+02:00 [$type] log entry" - rm "build/$type" - rm "build/backup.log" + assert_output "ℹ️ INFO: 2000-01-01T23:30:45+02:00 [$type] log entry -> build/test/backup.log" + assert_equal "$(cat "build/test/backup.log")" "2000-01-01T23:30:45+02:00 [$type] log entry" + rm "build/test/$type" + rm "build/test/backup.log" } for type in none day week month; do -- 2.47.3