debug_test revision 1.5
11.1Sblymn#!/bin/sh
21.1Sblymn#
31.1Sblymn#
41.1SblymnBASEDIR="/usr/tests/lib/libcurses"
51.1SblymnCHECK_PATH="${BASEDIR}/check_files/"
61.1Sblymnexport CHECK_PATH
71.1SblymnINCLUDE_PATH="${BASEDIR}/tests/"
81.1Sblymnexport INCLUDE_PATH
91.1Sblymn#
101.2SblymnCURSES_TRACE_FILE="/tmp/ctrace"
111.5SblymnSLAVE="${BASEDIR}/slave"
121.2Sblymn
131.2Sblymnusage() {
141.2Sblymn	echo "Set up the environment to run the test frame.  Option flags:"
151.2Sblymn	echo
161.2Sblymn	echo "    -c : Set up curses tracing, assumes the curses lib has been built with"
171.2Sblymn	echo "         debug enabled.  Default trace mask traces input, can be overridden"
181.2Sblymn	echo "         by setting the trace mask in the environment before calling the"
191.2Sblymn	echo "         The trace file output goes to /tmp/ctrace"
201.2Sblymn	echo "         script."
211.4Sblymn	echo "    -F : Specify the file name for curses tracing the default is"
221.2Sblymn	echo "         ${CURSES_TRACE_FILE}"
231.3Sblymn	echo "	  -L : Add the argument as a prefix to LD_LIBRARY_PATH to"
241.3Sblymn	echo "	       use an alternate libcurses version"
251.2Sblymn	echo "    -s : Specify the slave command.  Defaults to \"../slave/slave\""
261.2Sblymn	echo "    -v : Enable verbose output"
271.4Sblymn	echo "    -g : Enable check file generation if the file does not exists"
281.4Sblymn	echo "    -f : Forces check file generation if -g flag is set"
291.2Sblymn	echo
301.2Sblymn}
311.2Sblymn
321.4Sblymn# This is needed for getwin/putwin test case and /tmp can be used for any file
331.4Sblymn# related tests.
341.5Sblymn#rm -rf /tmp/*
351.4Sblymn
361.1Sblymn#
371.5Sblymn#ARGS="-T ${BASEDIR} -I ${INCLUDE_PATH} -C ${CHECK_PATH}"
381.5SblymnARGS="-T ${BASEDIR} -C ${CHECK_PATH}"
391.1Sblymn#
401.4Sblymnwhile getopts cf:L:s:vg opt
411.1Sblymndo
421.2Sblymn    case "${opt}" in
431.2Sblymn	c)
441.1Sblymn	    if [ "X$CURSES_TRACE_MASK" = "X" ]; then
451.1Sblymn		CURSES_TRACE_MASK=0x00000082
461.1Sblymn	    fi
471.1Sblymn	    export CURSES_TRACE_FILE
481.1Sblymn	    export CURSES_TRACE_MASK
491.1Sblymn	    ;;
501.1Sblymn
511.4Sblymn	F)
521.2Sblymn	    CURSES_TRACE_FILE=${OPTARG}
531.2Sblymn	    ;;
541.2Sblymn
551.3Sblymn	L)
561.3Sblymn	    LD_LIBRARY_PATH=${OPTARG}:${LD_LIBRARY_PATH}
571.3Sblymn	    ;;
581.3Sblymn
591.2Sblymn	s)
601.2Sblymn	    SLAVE=${OPTARG}
611.1Sblymn	    ;;
621.1Sblymn
631.2Sblymn	v)
641.4Sblymn	    ARGS="-v ${ARGS}"
651.1Sblymn	    ;;
661.1Sblymn
671.4Sblymn	g)
681.4Sblymn	    ARGS="-g ${ARGS}"
691.4Sblymn		;;
701.4Sblymn
711.4Sblymn	f)
721.4Sblymn	ARGS="-f ${ARGS}"
731.4Sblymn	;;
741.4Sblymn
751.2Sblymn	\?)
761.2Sblymn	    usage
771.2Sblymn	    exit 1
781.1Sblymn	    ;;
791.1Sblymn    esac
801.1Sblymndone
811.1Sblymn#
821.2Sblymnshift $((OPTIND - 1))
831.2Sblymn#
841.2Sblymnif [ -z "${1}" ]
851.2Sblymnthen
861.2Sblymn	echo
871.2Sblymn	echo "A test name needs to be specified."
881.2Sblymn	echo
891.2Sblymn	usage
901.2Sblymn	echo
911.2Sblymn	exit 1
921.2Sblymnfi
931.2Sblymn#
941.5Sblymnexec ${BASEDIR}/director ${ARGS} -s ${SLAVE} "${INCLUDE_PATH}/$1"
95