diff options
Diffstat (limited to '')
-rwxr-xr-x | false-test/test | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/false-test/test b/false-test/test new file mode 100755 index 0000000..9e525fd --- /dev/null +++ b/false-test/test @@ -0,0 +1,81 @@ +#!/bin/bash + +cd -- "$(dirname "$0")" +if test -z "$FALSE"; then + FALSE=../false +fi +t="$PREFIX $FALSE" + +report () +{ + if test $1 = 0; then + printf "\033[1;32mTest %s OK\033[m\n" "$2" + else + printf "\033[1;31mTest %s FAILED\033[m\n" "$2" + fi +} + + + +args0 () +{ + ! $t + report $? "args0" +} + +args1 () +{ + ! $t 1 + report $? "args1" +} + +args2 () +{ + ! $t 1 2 + report $? "args2" +} + +args3 () +{ + ! $t 1 2 3 + report $? "args3" +} + +dash () +{ + ! $t - + report $? "dash" +} + +opt () +{ + ! $t -h + report $? "opt" +} + +ddash () +{ + ! $t -- + report $? "ddash" +} + +long () +{ + ! $t --hello + report $? "long" +} + + + +if test $# = 0; then + set args0 args1 args2 args3 dash opt ddash long +fi +( +for f in $@; do + $f +done +) | tee result +! grep FAILED < result >/dev/null +ret=$? +rm result +exit $ret |