Home | History | Annotate | Line # | Download | only in libcurses
debug_test revision 1.8
      1  1.1  blymn #!/bin/sh
      2  1.1  blymn #
      3  1.1  blymn #
      4  1.1  blymn BASEDIR="/usr/tests/lib/libcurses"
      5  1.1  blymn CHECK_PATH="${BASEDIR}/check_files/"
      6  1.1  blymn export CHECK_PATH
      7  1.1  blymn INCLUDE_PATH="${BASEDIR}/tests/"
      8  1.1  blymn export INCLUDE_PATH
      9  1.1  blymn #
     10  1.2  blymn CURSES_TRACE_FILE="/tmp/ctrace"
     11  1.5  blymn SLAVE="${BASEDIR}/slave"
     12  1.6  blymn #
     13  1.6  blymn # Force localisation to UTF-8 to be consistent with atf runs
     14  1.6  blymn #
     15  1.6  blymn export LC_ALL=en_US.UTF-8
     16  1.2  blymn 
     17  1.2  blymn usage() {
     18  1.2  blymn 	echo "Set up the environment to run the test frame.  Option flags:"
     19  1.2  blymn 	echo
     20  1.2  blymn 	echo "    -c : Set up curses tracing, assumes the curses lib has been built with"
     21  1.2  blymn 	echo "         debug enabled.  Default trace mask traces input, can be overridden"
     22  1.2  blymn 	echo "         by setting the trace mask in the environment before calling the"
     23  1.2  blymn 	echo "         The trace file output goes to /tmp/ctrace"
     24  1.2  blymn 	echo "         script."
     25  1.4  blymn 	echo "    -F : Specify the file name for curses tracing the default is"
     26  1.2  blymn 	echo "         ${CURSES_TRACE_FILE}"
     27  1.3  blymn 	echo "	  -L : Add the argument as a prefix to LD_LIBRARY_PATH to"
     28  1.3  blymn 	echo "	       use an alternate libcurses version"
     29  1.8  blymn 	echo "    -n : Add the nofail option to the director invocation"
     30  1.8  blymn 	echo "       : so the director won't exit on check_file mismatch"
     31  1.2  blymn 	echo "    -s : Specify the slave command.  Defaults to \"../slave/slave\""
     32  1.2  blymn 	echo "    -v : Enable verbose output"
     33  1.4  blymn 	echo "    -g : Enable check file generation if the file does not exists"
     34  1.4  blymn 	echo "    -f : Forces check file generation if -g flag is set"
     35  1.8  blymn 	echo "    -t : Specify the TERM to use for the tests"
     36  1.2  blymn 	echo
     37  1.2  blymn }
     38  1.2  blymn 
     39  1.4  blymn # This is needed for getwin/putwin test case and /tmp can be used for any file
     40  1.4  blymn # related tests.
     41  1.5  blymn #rm -rf /tmp/*
     42  1.4  blymn 
     43  1.1  blymn #
     44  1.5  blymn #ARGS="-T ${BASEDIR} -I ${INCLUDE_PATH} -C ${CHECK_PATH}"
     45  1.5  blymn ARGS="-T ${BASEDIR} -C ${CHECK_PATH}"
     46  1.1  blymn #
     47  1.8  blymn while getopts cf:F:L:ns:t:vg opt
     48  1.1  blymn do
     49  1.2  blymn     case "${opt}" in
     50  1.2  blymn 	c)
     51  1.1  blymn 	    if [ "X$CURSES_TRACE_MASK" = "X" ]; then
     52  1.1  blymn 		CURSES_TRACE_MASK=0x00000082
     53  1.1  blymn 	    fi
     54  1.1  blymn 	    export CURSES_TRACE_FILE
     55  1.1  blymn 	    export CURSES_TRACE_MASK
     56  1.1  blymn 	    ;;
     57  1.1  blymn 
     58  1.4  blymn 	F)
     59  1.2  blymn 	    CURSES_TRACE_FILE=${OPTARG}
     60  1.2  blymn 	    ;;
     61  1.2  blymn 
     62  1.3  blymn 	L)
     63  1.3  blymn 	    LD_LIBRARY_PATH=${OPTARG}:${LD_LIBRARY_PATH}
     64  1.3  blymn 	    ;;
     65  1.3  blymn 
     66  1.8  blymn 	n)
     67  1.8  blymn 	    ARGS="-n ${ARGS} "
     68  1.8  blymn 	    ;;
     69  1.8  blymn 
     70  1.2  blymn 	s)
     71  1.2  blymn 	    SLAVE=${OPTARG}
     72  1.1  blymn 	    ;;
     73  1.1  blymn 
     74  1.8  blymn 	t)
     75  1.8  blymn 	    ARGS="-t ${OPTARG} ${ARGS}"
     76  1.8  blymn 	    ;;
     77  1.8  blymn 
     78  1.2  blymn 	v)
     79  1.4  blymn 	    ARGS="-v ${ARGS}"
     80  1.1  blymn 	    ;;
     81  1.1  blymn 
     82  1.4  blymn 	g)
     83  1.4  blymn 	    ARGS="-g ${ARGS}"
     84  1.4  blymn 		;;
     85  1.4  blymn 
     86  1.4  blymn 	f)
     87  1.4  blymn 	ARGS="-f ${ARGS}"
     88  1.4  blymn 	;;
     89  1.4  blymn 
     90  1.2  blymn 	\?)
     91  1.2  blymn 	    usage
     92  1.2  blymn 	    exit 1
     93  1.1  blymn 	    ;;
     94  1.1  blymn     esac
     95  1.1  blymn done
     96  1.1  blymn #
     97  1.2  blymn shift $((OPTIND - 1))
     98  1.2  blymn #
     99  1.2  blymn if [ -z "${1}" ]
    100  1.2  blymn then
    101  1.2  blymn 	echo
    102  1.2  blymn 	echo "A test name needs to be specified."
    103  1.2  blymn 	echo
    104  1.2  blymn 	usage
    105  1.2  blymn 	echo
    106  1.2  blymn 	exit 1
    107  1.2  blymn fi
    108  1.2  blymn #
    109  1.5  blymn exec ${BASEDIR}/director ${ARGS} -s ${SLAVE} "${INCLUDE_PATH}/$1"
    110