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$EXEEXT
# 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
}
cd $TEMPDIR
activity="create program"
-cat > $TEMPDIR/rnd.sps <<EOF
+cat > $TESTFILE <<EOF
set seed=10.
input program.
+ loop #i = 1 to 20.
-+ do repeat response=r1.
++ do repeat response=R1.
+ compute response = uniform(10).
+ end repeat.
+ end case.
+ end loop.
+ end file.
-end input program.
+end input program.
list.
EOF
if [ $? -ne 0 ] ; then no_result ; fi
-$SUPERVISOR $here/../src/pspp -o raw-ascii $TEMPDIR/rnd.sps
+activity="run program"
+$SUPERVISOR $PSPP -o pspp.csv $TESTFILE
if [ $? -ne 0 ] ; then no_result ; fi
-diff -b -B -w $TEMPDIR/pspp.list - << EOF
- R1
---------
- 2.36
- 3.13
- 1.76
- .15
- 5.88
- 8.74
- 2.19
- 6.53
- 5.69
- 6.77
- 7.20
- 4.01
- .03
- 4.67
- 5.10
- .44
- 8.27
- 6.81
- 9.55
- 8.74
+activity="compare output"
+perl -pi -e 's/^\s*$//g' $TEMPDIR/pspp.csv
+diff -b -w $TEMPDIR/pspp.csv - << EOF
+Table: Data List
+R1
+7.71
+2.99
+.21
+4.95
+6.34
+4.43
+7.49
+8.32
+4.99
+5.83
+2.25
+.25
+1.98
+7.09
+7.61
+2.66
+1.69
+2.64
+.88
+1.50
EOF
if [ $? -ne 0 ] ; then fail ; fi