badopt_all.sh (723B)
- #!/bin/sh
- # SPDX-FileCopyrightText: 2017 Haelwenn (lanodan) Monnier <contact+utils@hacktivis.me>
- # SPDX-License-Identifier: MPL-2.0
- plan="$#"
- printf '1..%d\n' "$plan"
- err=0
- count=0
- for cmd; do
- : $((count++))
- case "$cmd" in
- cmd/yes)
- # takes no option and loops
- printf 'ok %d - %s # skip\n' "$count" "$cmd"
- continue
- ;;
- esac
- timeout 3s ./"$cmd" -? >/dev/null 2>&1
- status=$?
- case "$status" in
- 124|126)
- printf 'not ok %d - %s\n' "$count" "$cmd"
- printf '# exit status: %d\n' "$status"
- err=1
- ;;
- *)
- printf 'ok %d - %s\n' "$count" "$cmd"
- ;;
- esac
- done
- if test "$plan" -ne "$count"; then
- printf >&2 'test-cmd/badopt_all.sh: error: Expected %d tests, ran %d\n' "$plan" "$count"
- err=1
- fi
- exit "$err"