Rewrite PSPP output engine.
[pspp-builds.git] / tests / command / oneway-missing.sh
index 76ab99eaaac38d13044cc23f485519c3101fee5d..d4a4c6fd9b648f31a9b8f0e1d258cfc68f1277ec 100755 (executable)
@@ -3,17 +3,28 @@
 # This program tests that the ONEWAY anova command works OK when there is missing data
 
 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
 }
 
@@ -46,7 +57,7 @@ mkdir -p $TEMPDIR
 cd $TEMPDIR
 
 activity="create program"
-cat > $TEMPDIR/out.stat <<EOF
+cat > $TESTFILE <<EOF
 DATA LIST LIST /v1 * v2 * dep * vn *.
 BEGIN DATA
 . .  1  4
@@ -77,15 +88,15 @@ if [ $? -ne 0 ] ; then no_result ; fi
 
 
 activity="run program"
-$SUPERVISOR $here/../src/pspp -o raw-ascii $TEMPDIR/out.stat
+$SUPERVISOR $PSPP --testing-mode $TESTFILE
 if [ $? -ne 0 ] ; then no_result ; fi
 
 activity="copy output"
-cp $TEMPDIR/pspp.list $TEMPDIR/pspp.list1
+cp $TEMPDIR/pspp.csv $TEMPDIR/pspp.csv1
 if [ $? -ne 0 ] ; then no_result ; fi
 
 activity="create program 2"
-cat > $TEMPDIR/out.stat <<EOF
+cat > $TESTFILE <<EOF
 DATA LIST LIST /v1 * v2 * dep * vn * .
 BEGIN DATA
 4 .  1  2 
@@ -115,17 +126,17 @@ EOF
 if [ $? -ne 0 ] ; then no_result ; fi
 
 activity="run program 2"
-$SUPERVISOR $here/../src/pspp -o raw-ascii $TEMPDIR/out.stat
+$SUPERVISOR $PSPP --testing-mode $TESTFILE
 if [ $? -ne 0 ] ; then no_result ; fi
 
 activity="compare outputs"
-diff $TEMPDIR/pspp.list $TEMPDIR/pspp.list1
+diff $TEMPDIR/pspp.csv $TEMPDIR/pspp.csv1
 if [ $? -ne 0 ] ; then fail ; fi
 
 # Now try a missing dependent variable
 # Everything depends upon it, so it should behave as if LISTWISE were set
 activity="create program 3"
-cat > $TEMPDIR/out.stat <<EOF
+cat > $TESTFILE <<EOF
 DATA LIST LIST /v1 * v2 * dep * vn * .
 BEGIN DATA
 4 2  .  2 
@@ -155,11 +166,11 @@ EOF
 if [ $? -ne 0 ] ; then no_result ; fi
 
 activity="run program 3"
-$SUPERVISOR $here/../src/pspp -o raw-ascii $TEMPDIR/out.stat
+$SUPERVISOR $PSPP --testing-mode $TESTFILE
 if [ $? -ne 0 ] ; then no_result ; fi
 
 activity="compare outputs"
-diff $TEMPDIR/pspp.list $TEMPDIR/pspp.list1
+diff $TEMPDIR/pspp.csv $TEMPDIR/pspp.csv1
 if [ $? -ne 0 ] ; then fail ; fi