#!/bin/bash set -euo pipefail IMAGE="$1" FAILED=0 PASSED=0 TMPDIR="$(mktemp -d)" trap 'rm -rf "$TMPDIR"' EXIT docker run --rm --entrypoint /usr/bin/unrar "$IMAGE" > "$TMPDIR/output" 2>&1; RC=$? if grep -qiE "unrar|usage" "$TMPDIR/output"; then echo "PASS: unrar prints usage info" PASSED=$((PASSED + 1)) else echo "FAIL: unrar output unrecognized" FAILED=$((FAILED + 1)) fi # unrar displays help on stderr in some versions, check there too docker run --rm --entrypoint /usr/bin/unrar "$IMAGE" 2> "$TMPDIR/stderr" 1>/dev/null; : if grep -qiE "unrar|usage" "$TMPDIR/stderr"; then echo "PASS: unrar stderr contains usage info" PASSED=$((PASSED + 1)) else echo "FAIL: unrar stderr unrecognized" FAILED=$((FAILED + 1)) fi echo "" echo "$PASSED/$((PASSED + FAILED)) tests passed" if [ "$FAILED" -gt 0 ]; then exit 1 fi