#!/usr/bin/bash

set -euo pipefail

controller=$1
payload_config=$2

bash -n "$controller"
"$controller" --help | grep -q '^  .* enable \[--rpm PATH\] \[--force\] \[--yes\]$'

reject() {
    if "$controller" "$@" >/dev/null 2>&1; then
        printf 'Invalid invocation unexpectedly succeeded: %s\n' "$*" >&2
        exit 1
    fi
}

reject
reject unknown-command
reject status --yes
reject enable --rpm
reject enable --unknown
reject disable --force

payload_url=
payload_sha256=
# shellcheck source=/dev/null
source "$payload_config"
[[ $payload_url == https://*/*.rpm ]]
[[ $payload_sha256 =~ ^[[:xdigit:]]{64}$ ]]

printf 'Controller tests passed.\n'
