Files
wireguard-scripts/tests/mocks/bin/qrencode
T

17 lines
854 B
Bash
Executable File

#!/usr/bin/env bash
set -Eeuo pipefail
: "${TEST_MOCK_LOG:?TEST_MOCK_LOG must identify isolated log}"
printf 'qrencode' >>"$TEST_MOCK_LOG"
for argument in "$@"; do printf ' %q' "$argument" >>"$TEST_MOCK_LOG"; done
printf '\n' >>"$TEST_MOCK_LOG"
[[ $# == 2 && $1 == -t && $2 == ansiutf8 ]] || { printf 'Unexpected qrencode arguments\n' >&2; exit 99; }
if [[ -n ${QR_MOCK_EXPECTED_FILE:-} ]]; then
[[ -n ${TEST_ROOT:-} && ${QR_MOCK_EXPECTED_FILE} == "${TEST_ROOT}"/* && -f ${QR_MOCK_EXPECTED_FILE} && ! -L ${QR_MOCK_EXPECTED_FILE} ]] || { printf 'Unexpected QR fixture path\n' >&2; exit 98; }
cmp -s -- "$QR_MOCK_EXPECTED_FILE" - || { printf 'Unexpected QR input\n' >&2; exit 98; }
else
printf 'QR expected fixture is required\n' >&2
exit 98
fi
[[ ${QR_MOCK_FAIL:-0} != 1 ]] || { printf 'Mock qrencode failure\n' >&2; exit 97; }
printf 'MOCK-QR\n'