]> gitweb.hhaalo.de Git - simple-backup.git/commitdiff
add command yq not found error
authorBastian Dehn <hhaalo@arcor.de>
Mon, 3 Aug 2026 15:40:48 +0000 (17:40 +0200)
committerBastian Dehn <hhaalo@arcor.de>
Mon, 3 Aug 2026 15:40:48 +0000 (17:40 +0200)
src/backup
tests/backup_tests.bats

index f24476aba0ed5879ab4e7f66e4e434e68148bb1b..5c8e95fe73a9c5895472f56a12c39372b247637e 100755 (executable)
@@ -1,8 +1,22 @@
 #!/bin/bash
 
+errlog()
+{
+       local lastexit=$?
+       local msg="$1"
+
+       echo "❌ ERROR: $msg"
+       return $lastexit
+}
+
 main()
 {
        echo "⭐ START: backup"
+
+       command -v yq > /dev/null \
+               || errlog "command yq not found" \
+               || return $?
 }
 
+[ "$TESTMODE" == "ON" ] || return 0
 main "$@"
\ No newline at end of file
index d7d74897a89f6866b36d595dfbec9f293987c97a..25cbdad34a909ca005087a2291be22702053ee9c 100755 (executable)
@@ -2,18 +2,36 @@
 
 setup() {
        bats_load_library 'bats-support'
-       bats_load_library 'bats-assert' 
+       bats_load_library 'bats-assert'
+       export TESTMODE=ON
+       source src/backup
+}
+
+teardown() {
+       unset TESTMODE
 }
 
 @test "backup run success" {
-       run src/backup
+       run main
 
        assert_success
 }
 
 @test "show start message" {
-       run src/backup
+       run main
 
        assert_success
        assert_output "⭐ START: backup"
 }
+
+@test "failure yq command not found" {
+       command() {
+               return 1
+       }
+
+       run main
+
+       assert_failure
+       assert_line --index 0 "⭐ START: backup"
+       assert_line --index 1 "❌ ERROR: command yq not found"
+}
\ No newline at end of file