OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [ecos-3.0/] [packages/] [net/] [autotest/] [current/] [host/] [obey.sh] - Rev 786

Compare with Previous | Blame | View Log

#!/bin/sh
 
if [ $# -gt 1 ]; then
    echo "Usage: $0 [acknowledgement-agent]" > /dev/stderr
    exit 1
fi
 
# add . to the path for testing.
export PATH=$PATH:.
 
# get a script for returning results to the testcase; its API is
#      echo .... | SENDACK [XFAIL] <target>
if [ $# -gt 0 ]; then
    SENDACK=$1; shift
else
    SENDACK=sendack.sh
fi
 
TMP=/tmp/auto	;# root of temporary filespace
 
WF=${TMP}/wf	;# work files for tftp et al
LG=${TMP}/log	;# log files for individual tests
 
declare -i unique=0 ;# unique IDs for workfiles and logfiles
 
while [ true ]; do
 
    ((unique++))
 
    read -a ORDERS || {	echo "FAIL: EOF on read" > /dev/stderr; exit 1; }
 
    set ${ORDERS[@]}
 
    [ "xQUIT" == "x$1" ] && break
 
    [ "xORDERS:" != "x$1" ] && \
	{ echo "No ORDERS tag" > /dev/stderr; continue; }
 
    XFAIL=""; [ "xXFAIL" == "x$2" ] && { XFAIL="XFAIL"; shift; }
 
    shift; TEST=$1
    shift; TARGET=$1
    shift; PARAMS=($@)
 
    echo "test $TEST [$XFAIL]; target $TARGET; params ${PARAMS[@]}"
 
    # Be robust against zealous GC of workfiles - as late as possible
    # before we use them, it's in the read above that we sleep.
    [ ! -d ${TMP} ] && mkdir ${TMP}
    [ ! -d ${WF}  ] && mkdir ${WF}
    [ ! -d ${LG}  ] && mkdir ${LG}
 
    # Now the main switch that runs the test script: this is where
    # new testcases are added:
    case $TEST in
 
    TFTP_SERV_GET)
    tftpget.sh $XFAIL $TARGET $WF/tftpget.$unique ${PARAMS[@]} \
	    2>&1 >$LG/tftpget.$unique   | $SENDACK $XFAIL $TARGET & ;;
 
    TFTP_SERV_PUT)
    tftpput.sh $XFAIL $TARGET $WF/tftpput.$unique ${PARAMS[@]} \
	    2>&1 >$LG/tftpput.$unique   | $SENDACK $XFAIL $TARGET & ;;
 
    SLOW_PING)
    slowping.sh $XFAIL $TARGET ${PARAMS[@]} \
	    2>&1 >$LG/slowping.$unique  | $SENDACK $XFAIL $TARGET & ;;
 
    FLOOD_PING)
    floodping.sh $XFAIL $TARGET ${PARAMS[@]} \
	    2>&1 >$LG/floodping.$unique  | $SENDACK $XFAIL $TARGET & ;;
 
    SNMP_WALK)
    snmpwalk.sh $XFAIL $TARGET ${PARAMS[@]} \
	    2>&1 >$LG/snmpwalk.$unique  | $SENDACK $XFAIL $TARGET & ;;
 
    *) echo "Unknown order $TEST" > /dev/stderr ;;
 
    esac
 
done
 
# EOF
 

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.