#!/usr/bin/env bash
set -euo pipefail

[[ $# -eq 5 ]] || {
    echo "mock mount: expected exactly five arguments" >&2
    exit 90
}
[[ "$1" == "--fake" && "$2" == "--no-mtab" && "$3" == "--all" && "$4" == "--fstab" ]] || {
    echo "mock mount: refusing non-fake invocation: $*" >&2
    exit 91
}

candidate=$5
expected='UUID=7c2a11ef-51b8-4d03-b8d3-fc08ecad31a9 /srv/archive ext4 defaults,nofail,x-systemd.device-timeout=10s 0 2'

grep -Fqx "$expected" "$candidate" || {
    echo "mock mount: corrected entry is not the safe expected entry" >&2
    exit 92
}
if grep -Eq '(^|,)(uid|gid|umask|dmask|fmask)=' "$candidate"; then
    echo "mock mount: ext4 ownership option survived" >&2
    exit 93
fi

: "${MOCK_MOUNT_MARKER:?mock mount marker is required}"
printf '%s\n' 'fake validation reached' >"$MOCK_MOUNT_MARKER"
