17 lines
854 B
Bash
Executable File
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'
|