echo "ℹ️ INFO: backup path $backup_path"
}
+exists_backup_name()
+{
+ local config="$1"
+ local backup_name=
+ backup_name=$(echo "$config" | jq --raw-output '.backup_name')
+ [ "$backup_name" != "null" ] \
+ || errlog "$CONFIG_FILE missing backup_name" \
+ || return $?
+ echo "ℹ️ INFO: backup name $backup_name"
+}
+
+exists_backup_count()
+{
+ local config="$1"
+ local backup_count=
+ backup_count=$(echo "$config" | jq --raw-output '.backup_count')
+ [ "$backup_count" != "null" ] \
+ || errlog "$CONFIG_FILE missing backup_count" \
+ || return $?
+ echo "ℹ️ INFO: backup count $backup_count"
+}
+
main()
{
local CONFIG_FILE=${CONFIG_FILE:="config.yaml"}
|| errlog "failed to load $CONFIG_FILE" \
|| return $?
- exists_backup_path "$config"
- local backup_name=
- backup_name=$(echo "$config" | jq --raw-output '.backup_name')
- [ "$backup_name" != "null" ] \
- || errlog "$CONFIG_FILE missing backup_name" \
- || return $?
- local backup_count=
- backup_count=$(echo "$config" | jq --raw-output '.backup_count')
- [ "$backup_count" != "null" ] \
- || errlog "$CONFIG_FILE missing backup_count" \
- || return $?
- echo "ℹ️ INFO: backup count $backup_count"
+ exists_backup_path "$config" || return $?
+ exists_backup_name "$config" || return $?
+ exists_backup_count "$config" || return $?
+
+ echo "✅ SUCCESS: backup"
}
[ "$TESTMODE" == "ON" ] && return 0
run main
+ assert_failure
assert_line --index 0 "⭐ START: backup"
assert_line --index 1 "❌ ERROR: file config.yaml not found"
}
run main
+ assert_failure
assert_line --index 0 "⭐ START: backup"
assert_line --index 1 "❌ ERROR: failed to load src/config-example.yaml"
}
run main
+ assert_failure
assert_line --index 0 "⭐ START: backup"
assert_line --index 1 "❌ ERROR: src/config-example.yaml missing backup_path"
}
-@test "success info backup path from config" {
- yq() {
- echo '{"backup_path": "path"}'
- }
-
- run main
-
- assert_line --index 0 "⭐ START: backup"
- assert_line --index 1 "ℹ️ INFO: backup path path"
-}
-
@test "failure no backup name in config" {
yq() {
echo '{"backup_path": "path"}'
run main
+ assert_failure
assert_line --index 0 "⭐ START: backup"
assert_line --index 1 "ℹ️ INFO: backup path path"
assert_line --index 2 "❌ ERROR: src/config-example.yaml missing backup_name"
run main
+ assert_failure
assert_line --index 0 "⭐ START: backup"
assert_line --index 1 "ℹ️ INFO: backup path path"
- assert_line --index 2 "❌ ERROR: src/config-example.yaml missing backup_count"
+ assert_line --index 2 "ℹ️ INFO: backup name backup"
+ assert_line --index 3 "❌ ERROR: src/config-example.yaml missing backup_count"
}
@test "success info backup count" {
run main
+ assert_success
assert_line --index 0 "⭐ START: backup"
assert_line --index 1 "ℹ️ INFO: backup path /images/backup"
- assert_line --index 2 "ℹ️ INFO: backup count 15"
+ assert_line --index 2 "ℹ️ INFO: backup name backup"
+ assert_line --index 3 "ℹ️ INFO: backup count 15"
+ assert_line --index 4 "✅ SUCCESS: backup"
}
\ No newline at end of file