# This program tests the use of big numbers
TEMPDIR=/tmp/pspp-tst-$$
+TESTFILE=$TEMPDIR/`basename $0`.sps
-here=`pwd`;
+# ensure that top_builddir are absolute
+if [ -z "$top_builddir" ] ; then top_builddir=. ; fi
+if [ -z "$top_srcdir" ] ; then top_srcdir=. ; fi
+top_builddir=`cd $top_builddir; pwd`
+PSPP=$top_builddir/src/ui/terminal/pspp
# ensure that top_srcdir is absolute
-cd $top_srcdir; top_srcdir=`pwd`
+top_srcdir=`cd $top_srcdir; pwd`
-export STAT_CONFIG_PATH=$top_srcdir/config
+STAT_CONFIG_PATH=$top_srcdir/config
+export STAT_CONFIG_PATH
cleanup()
{
+ if [ x"$PSPP_TEST_NO_CLEANUP" != x ] ; then
+ echo "NOT cleaning $TEMPDIR"
+ return ;
+ fi
+ cd /
rm -rf $TEMPDIR
}
activity="create program"
-cat > $TEMPDIR/prog.stat <<foobar
+cat > $TESTFILE <<foobar
title 'Test use of big numbers'.
*** Do the portable output.
-remark EOF
-----------------------------------------------------------------------
-Testing use of big numbers.\n
-The numbers in the data file are designed for IEEE754 double
-format--if your system uses something different then the test needs to
-be adjusted for whatever are big numbers to your system.
-----------------------------------------------------------------------
-EOF
data list file='$TEMPDIR/bignum.data'/BIGNUM 1-40.
list.
*** Do the nonportable output for fun.
-remark EOF
-NOCOMP
-SUCCESS?
-----------------------------------------------------------------------
-This test merely shows whether your system can successfully handle
-floating-point overflow. If you get a fatal exception at this point,
-the source needs some editing--glob.c should mask overflow exceptions
-in init_glob(). Again, the numbers are specific to IEEE754 double
-format.
-----------------------------------------------------------------------
-EOF
descriptives BIGNUM.
-rem-SUCCESS
foobar
if [ $? -ne 0 ] ; then no_result ; fi
activity="run program"
-$SUPERVISOR $here/../src/pspp -o raw-ascii prog.stat
+$SUPERVISOR $PSPP --testing-mode $TESTFILE
if [ $? -ne 0 ] ; then no_result ; fi
# Like the above comments say ...