#!/bin/sh nt_() { ./nt "$@" } >/dev/null fail() { echo "$@" exit 1 } >&2 nt_ && fail "shall return non-zero exit code on no args" nt_ 0 && fail "shall return non-zero exit code on just one arg" nt_ 0 - && fail "shall return non-zero exit code on zero reps" nt_ -1 - && fail "shall return non-zero exit code on negative reps" nt_ abc - && fail "shall return non-zero exit code on invalid number" nt_ 20 - || fail "shall return zero exit code with one component to repeat" nt_ 10 - = + || fail "shall return zero exit code with more components" echo ok