tests: Convert tests for SAVE /KEEP=ALL to Autotest framework.
authorBen Pfaff <blp@cs.stanford.edu>
Mon, 11 Oct 2010 04:39:45 +0000 (21:39 -0700)
committerBen Pfaff <blp@cs.stanford.edu>
Mon, 11 Oct 2010 04:39:45 +0000 (21:39 -0700)
tests/automake.mk
tests/bugs/keep-all.sh [deleted file]
tests/language/data-io/get.at

index 5aaae81243475809830312c48653339cceca9534..362baaa7b59addcba745aa93bb8898d7a4c7f695 100644 (file)
@@ -27,7 +27,6 @@ dist_TESTS = \
        tests/formats/wkday-in.sh \
        tests/formats/wkday-out.sh \
        tests/formats/360.sh \
-       tests/bugs/keep-all.sh \
        tests/data/datasheet-test.sh \
        tests/libpspp/sparse-xarray-test.sh \
        tests/output/paper-size.sh \
diff --git a/tests/bugs/keep-all.sh b/tests/bugs/keep-all.sh
deleted file mode 100755 (executable)
index bbfd707..0000000
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/bin/sh
-
-# This program tests for bug #15766 (/KEEP subcommand on SAVE doesn't
-# fully support ALL) and underlying problems.
-
-TEMPDIR=/tmp/pspp-tst-$$
-TESTFILE=$TEMPDIR/`basename $0`.pspp
-
-# 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
-top_srcdir=`cd $top_srcdir; pwd`
-
-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
-}
-
-
-fail()
-{
-    echo $activity
-    echo FAILED
-    cleanup;
-    exit 1;
-}
-
-
-no_result()
-{
-    echo $activity
-    echo NO RESULT;
-    cleanup;
-    exit 2;
-}
-
-pass()
-{
-    cleanup;
-    exit 0;
-}
-
-mkdir -p $TEMPDIR
-
-cd $TEMPDIR
-
-for mode in COMPRESSED UNCOMPRESSED; do
-    activity="create program ($mode)"
-    cat > $TESTFILE <<EOF
-DATA LIST LIST NOTABLE 
-       /a b c d e f g h i j k l m n o p q r s t u v w x y z (F2.0).
-BEGIN DATA.
-1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
-END DATA.
-LIST.
-SAVE OUTFILE='test.sav'/$mode.
-GET FILE='test.sav'/KEEP=x y z all.
-LIST.
-EOF
-    if [ $? -ne 0 ] ; then no_result ; fi
-
-    activity="run PSPP ($mode)"
-    $SUPERVISOR $PSPP -o pspp.csv $TESTFILE
-    if [ $? -ne 0 ] ; then no_result ; fi
-
-
-    activity="compare output ($mode)"
-    diff -c $TEMPDIR/pspp.csv - << EOF
-Table: Data List
-a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z
-1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26
-
-Table: Data List
-x,y,z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w
-24,25,26,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23
-EOF
-    if [ $? -ne 0 ] ; then fail ; fi
-done
-
-pass;
index e9f2e2ef368666f82f9fc7b3c588361e51e6033f..a519b67fe3592583790a15e5ef6c929be2f2c5ff 100644 (file)
@@ -62,3 +62,33 @@ error: An error occurred while opening `nonexistent.sav': No such file or direct
 -:1: error: Stopping syntax file processing here to avoid a cascade of dependent command failures.
 ])
 AT_CLEANUP
+
+dnl Tests for bug #15766 (/KEEP subcommand on SAVE doesn't
+dnl fully support ALL) and underlying problems.
+m4_define([GET_KEEP_ALL],
+  [AT_SETUP([GET with /KEEP=ALL crashes -- $1])
+   AT_DATA([get.sps], [dnl
+DATA LIST LIST NOTABLE 
+       /a b c d e f g h i j k l m n o p q r s t u v w x y z (F2.0).
+BEGIN DATA.
+1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
+END DATA.
+LIST.
+SAVE OUTFILE='test.sav'/$1.
+GET FILE='test.sav'/KEEP=x y z all.
+LIST.
+])
+   AT_CHECK([pspp -o pspp.csv get.sps])
+   AT_CHECK([cat pspp.csv], [0], [dnl
+Table: Data List
+a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z
+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26
+
+Table: Data List
+x,y,z,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w
+24,25,26,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23
+])
+   AT_CLEANUP])
+GET_KEEP_ALL([uncompressed])
+GET_KEEP_ALL([compressed])
+