debug_test revision 1.6
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.6Sblymn#
131.6Sblymn# Force localisation to UTF-8 to be consistent with atf runs
141.6Sblymn#
151.6Sblymnexport LC_ALL=en_US.UTF-8
161.2Sblymn
171.2Sblymnusage() {
181.2Sblymn	echo "Set up the environment to run the test frame.  Option flags:"
191.2Sblymn	echo
201.2Sblymn	echo "    -c : Set up curses tracing, assumes the curses lib has been built with"
211.2Sblymn	echo "         debug enabled.  Default trace mask traces input, can be overridden"
221.2Sblymn	echo "         by setting the trace mask in the environment before calling the"
231.2Sblymn	echo "         The trace file output goes to /tmp/ctrace"
241.2Sblymn	echo "         script."
251.4Sblymn	echo "    -F : Specify the file name for curses tracing the default is"
261.2Sblymn	echo "         ${CURSES_TRACE_FILE}"
271.3Sblymn	echo "	  -L : Add the argument as a prefix to LD_LIBRARY_PATH to"
281.3Sblymn	echo "	       use an alternate libcurses version"
291.2Sblymn	echo "    -s : Specify the slave command.  Defaults to \"../slave/slave\""
301.2Sblymn	echo "    -v : Enable verbose output"
311.4Sblymn	echo "    -g : Enable check file generation if the file does not exists"
321.4Sblymn	echo "    -f : Forces check file generation if -g flag is set"
331.2Sblymn	echo
341.2Sblymn}
351.2Sblymn
361.4Sblymn# This is needed for getwin/putwin test case and /tmp can be used for any file
371.4Sblymn# related tests.
381.5Sblymn#rm -rf /tmp/*
391.4Sblymn
401.1Sblymn#
411.5Sblymn#ARGS="-T ${BASEDIR} -I ${INCLUDE_PATH} -C ${CHECK_PATH}"
421.5SblymnARGS="-T ${BASEDIR} -C ${CHECK_PATH}"
431.1Sblymn#
441.4Sblymnwhile getopts cf:L:s:vg opt
451.1Sblymndo
461.2Sblymn    case "${opt}" in
471.2Sblymn	c)
481.1Sblymn	    if [ "X$CURSES_TRACE_MASK" = "X" ]; then
491.1Sblymn		CURSES_TRACE_MASK=0x00000082
501.1Sblymn	    fi
511.1Sblymn	    export CURSES_TRACE_FILE
521.1Sblymn	    export CURSES_TRACE_MASK
531.1Sblymn	    ;;
541.1Sblymn
551.4Sblymn	F)
561.2Sblymn	    CURSES_TRACE_FILE=${OPTARG}
571.2Sblymn	    ;;
581.2Sblymn
591.3Sblymn	L)
601.3Sblymn	    LD_LIBRARY_PATH=${OPTARG}:${LD_LIBRARY_PATH}
611.3Sblymn	    ;;
621.3Sblymn
631.2Sblymn	s)
641.2Sblymn	    SLAVE=${OPTARG}
651.1Sblymn	    ;;
661.1Sblymn
671.2Sblymn	v)
681.4Sblymn	    ARGS="-v ${ARGS}"
691.1Sblymn	    ;;
701.1Sblymn
711.4Sblymn	g)
721.4Sblymn	    ARGS="-g ${ARGS}"
731.4Sblymn		;;
741.4Sblymn
751.4Sblymn	f)
761.4Sblymn	ARGS="-f ${ARGS}"
771.4Sblymn	;;
781.4Sblymn
791.2Sblymn	\?)
801.2Sblymn	    usage
811.2Sblymn	    exit 1
821.1Sblymn	    ;;
831.1Sblymn    esac
841.1Sblymndone
851.1Sblymn#
861.2Sblymnshift $((OPTIND - 1))
871.2Sblymn#
881.2Sblymnif [ -z "${1}" ]
891.2Sblymnthen
901.2Sblymn	echo
911.2Sblymn	echo "A test name needs to be specified."
921.2Sblymn	echo
931.2Sblymn	usage
941.2Sblymn	echo
951.2Sblymn	exit 1
961.2Sblymnfi
971.2Sblymn#
981.5Sblymnexec ${BASEDIR}/director ${ARGS} -s ${SLAVE} "${INCLUDE_PATH}/$1"
99