Allow output files to overwrite input files (bug #21280). Thanks to
[pspp] / tests / command / erase.sh
index 64d63a8e056604447f3c064d144c2fd9da36d320..0599bed315e666cafc21b71650d4996d753a25f0 100755 (executable)
@@ -5,10 +5,14 @@
 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`
 
 STAT_CONFIG_PATH=$top_srcdir/config
 export STAT_CONFIG_PATH
@@ -16,6 +20,7 @@ export STAT_CONFIG_PATH
 
 cleanup()
 {
+     cd /
      rm -rf $TEMPDIR
 }
 
@@ -72,7 +77,7 @@ if [ ! -f $TEMPDIR/foobar ] ; then fail ; fi
 
 # This command must fail
 activity="run prog 1"
-$SUPERVISOR $here/../src/pspp $TESTFILE > /dev/null
+$SUPERVISOR $PSPP --testing-mode -e /dev/null $TESTFILE 
 if [ $? -eq 0 ] ; then fail ; fi
 
 
@@ -85,8 +90,8 @@ EOF
 if [ $? -ne 0 ] ; then no_result ; fi
 
 
-activity="run prog 1"
-$SUPERVISOR $here/../src/pspp $TESTFILE
+activity="run prog 2"
+$SUPERVISOR $PSPP --testing-mode $TESTFILE
 if [ $? -ne 0 ] ; then fail ; fi
 
 # foobar should now be gone