diff options
Diffstat (limited to 'funtools/funtest/tfuncone')
-rwxr-xr-x | funtools/funtest/tfuncone | 131 |
1 files changed, 131 insertions, 0 deletions
diff --git a/funtools/funtest/tfuncone b/funtools/funtest/tfuncone new file mode 100755 index 0000000..7b307c4 --- /dev/null +++ b/funtools/funtest/tfuncone @@ -0,0 +1,131 @@ +#!/bin/sh +#set -x + +PLATFORM=`uname` +VERBOSE=0 +OPROG=funcone +NPROG=../funcone +STDIN=/dev/null +FILE=cat.txt +LIST="cat.ls" + +# avoid setting EXTNAME since we are not using +if [ x$TEXT_EXTNAME != x ]; then + unset TEXT_EXTNAME +fi + +if [ -r /usr/ucb/echo ]; then + ECHO=/usr/ucb/echo +else + ECHO=echo +fi + +while [ x"$1" != x ]; do + case $1 in + -1) + DO1=YES + shift + continue;; + -n) + shift + NPROG=$1 + shift + continue;; + -o) + shift + OPROG=$1 + shift + continue;; + -P) + DO1=YES + NPROG=../funcone.pure + shift + continue;; + -v) + VERBOSE=1 + shift + continue;; + -V) + VERBOSE=2 + shift + continue;; + *) + shift + continue;; + esac +done + +$ECHO "OPROG="${OPROG} +$ECHO "NPROG="${NPROG} + +IFS=" " +while read ARG1 ARG2 ARG3 ARG4; do + if [ x"$ARG1" = x ]; then + continue + fi + if [ x`$ECHO $ARG1 | sed 's/^#.*/YES/g'` = x"YES" ]; then + continue + fi + CMD=$ARG1 + + if [ x$ARG3 = x ]; then + ARG3="$ARG2" + fi + + case $CMD in + EXIT) + exit + ;; + EXACT) + if [ x"$DO1" = xYES ]; then + $ECHO "${M}DO1: $ARG3" + eval "$NPROG $ARG3" | fundisp stdin > funcone2.out + else + $ECHO "${M}EXACT: $ARG2 ... $ARG3" + CMP=yes + XPROG="" + eval "$OPROG $ARG2" | fundisp stdin > tfuncone1.out + if test $? -ne 0; then + CMP=no + XPROG="$OPROG" + fi + + eval "$NPROG $ARG3" | fundisp stdin > tfuncone2.out + if test $? -ne 0; then + CMP=no + XPROG="${XPROG:-}${XPROG:+' '}$NPROG" + fi + if [ x"$CMP" = xyes ]; then + if [ x"$ZBUG" = xtrue ]; then + sed "/^ *$X $Y.*$/d" < tfuncone1.out > funcone1.out + sed "/^ *$X $Y.*$/d" < tfuncone2.out > funcone2.out + else + mv tfuncone1.out funcone1.out + mv tfuncone2.out funcone2.out + fi + diff funcone1.out funcone2.out + else + $ECHO "skipping compare due to errors in $XPROG" + fi + fi + $ECHO " " + ;; + *) + $ECHO "ERROR: unknown command: $CMD" + exit 1 + ;; + esac + if [ $VERBOSE = 1 ]; then + $ECHO "***** funcone1.out *****" + cat funcone1.out + fi + if [ $VERBOSE = 2 ]; then + $ECHO "***** funcone1.out *****" + cat funcone1.out + $ECHO "***** funcone2.out *****" + cat funcone2.out + fi + rm -f err.log +done + +rm -f funcone1.out funcone2.out tfuncone1.out tfuncone2.out |