X-Git-Url: http://git.shiar.net/barcat.git/blobdiff_plain/a66dc847f71255c361b1350b1ee38b35dffb7454..d38e0ec883629db7a1b92f379840e7c409bf904e:/t/regress.t diff --git a/t/regress.t b/t/regress.t index eedefbb..508d361 100755 --- a/t/regress.t +++ b/t/regress.t @@ -26,16 +26,27 @@ do esac done -for candidate in ${@:-t*.in} +for candidate in ${@:-t*.out} do test_count=$((test_count+1)) - file="${candidate%.in}" - test -r "$file.in" || continue - + file="${candidate%.out}" + input="${file%%_-*}.in" name="$(echo ${file#*-} | tr _ \ )" - set -- barcat "$file.in" - case "$name" in *\ -*) set -- "$@" "-${name#* -}";; esac - case "$name" in *' |'*) set -- sh -c "\$0 \$1 $3" "$@";; esac + + set -- barcat + [ -r "$input" ] && set -- "$@" "$input" + case "$name" in + *\ -*) + args="${name#* -}" + set -- "$@" -"${args% [?|]*}" + ;; + esac + case "$name" in + *' ?' ) set -- sh -c "\$0 \$@ 2>/dev/null" "$@";; + *' ?'*) set -- sh -c "\$0 \$@ | test \$\? = ${name#* \?}" "$@";; + *' |'*) set -- sh -c "\$0 \$@ | ${name#* |}" "$@";; + *) eval set -- "$1" $2 $3 + esac if test -n "$regenerate" then