debug_test revision 1.4
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.4SblymnSLAVE="${BASEDIR}/slave/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.4Sblymnrm -rf /tmp/*
351.4Sblymn
361.1Sblymn#
371.4SblymnARGS="-T ${BASEDIR} -I ${INCLUDE_PATH} -C ${CHECK_PATH}"
381.1Sblymn#
391.4Sblymnwhile getopts cf:L:s:vg opt
401.1Sblymndo
411.2Sblymn    case "${opt}" in
421.2Sblymn	c)
431.1Sblymn	    if [ "X$CURSES_TRACE_MASK" = "X" ]; then
441.1Sblymn		CURSES_TRACE_MASK=0x00000082
451.1Sblymn	    fi
461.1Sblymn	    export CURSES_TRACE_FILE
471.1Sblymn	    export CURSES_TRACE_MASK
481.1Sblymn	    ;;
491.1Sblymn
501.4Sblymn	F)
511.2Sblymn	    CURSES_TRACE_FILE=${OPTARG}
521.2Sblymn	    ;;
531.2Sblymn
541.3Sblymn	L)
551.3Sblymn	    LD_LIBRARY_PATH=${OPTARG}:${LD_LIBRARY_PATH}
561.3Sblymn	    ;;
571.3Sblymn
581.2Sblymn	s)
591.2Sblymn	    SLAVE=${OPTARG}
601.1Sblymn	    ;;
611.1Sblymn
621.2Sblymn	v)
631.4Sblymn	    ARGS="-v ${ARGS}"
641.1Sblymn	    ;;
651.1Sblymn
661.4Sblymn	g)
671.4Sblymn	    ARGS="-g ${ARGS}"
681.4Sblymn		;;
691.4Sblymn
701.4Sblymn	f)
711.4Sblymn	ARGS="-f ${ARGS}"
721.4Sblymn	;;
731.4Sblymn
741.2Sblymn	\?)
751.2Sblymn	    usage
761.2Sblymn	    exit 1
771.1Sblymn	    ;;
781.1Sblymn    esac
791.1Sblymndone
801.1Sblymn#
811.2Sblymnshift $((OPTIND - 1))
821.2Sblymn#
831.2Sblymnif [ -z "${1}" ]
841.2Sblymnthen
851.2Sblymn	echo
861.2Sblymn	echo "A test name needs to be specified."
871.2Sblymn	echo
881.2Sblymn	usage
891.2Sblymn	echo
901.2Sblymn	exit 1
911.2Sblymnfi
921.2Sblymn#
931.4Sblymnexec ${BASEDIR}/director/director ${ARGS} -s ${SLAVE} "${INCLUDE_PATH}/$1"
94