mount_backup()
{
- :
+ local config="$1"
+ local media=
+ mapfile -t media < <(echo "$config" \
+ | jq --raw-output ".media | keys[]" 2> /dev/null)
+ [ "${#media[@]}" -gt 0 ] \
+ || errlog "missing media in $CONFIG_FILE" \
+ || return $?
}
umount_backup()
|| return $?
case $cmd in
- "mount") mount_backup || return $? ;;
+ "mount") mount_backup "$config" || return $? ;;
"umount") umount_backup || return $? ;;
*) errlog "unknown command" && return 1 ;;
esac
assert_failure
assert_line --index 0 "⭐ START: backupmount"
assert_line --index 1 "❌ ERROR: unknown command"
+}
+
+# bats test_tags=backupmount:mount
+@test "failure no media" {
+ yq() {
+ echo '{}'
+ }
+
+ run main "mount"
+
+ assert_failure
+ assert_line --index 0 "⭐ START: backupmount"
+ assert_line --index 1 "❌ ERROR: missing media in src/config-example.yaml"
}
\ No newline at end of file