From: Ben Pfaff <blp@cs.stanford.edu> Date: Mon, 11 Oct 2010 04:39:45 +0000 (-0700) Subject: tests: Convert tests for SAVE /KEEP=ALL to Autotest framework. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b74913975ed7b4c83fca98f1f46e7f938a37722d;p=pspp tests: Convert tests for SAVE /KEEP=ALL to Autotest framework. --- diff --git a/tests/automake.mk b/tests/automake.mk index 5aaae81243..362baaa7b5 100644 --- a/tests/automake.mk +++ b/tests/automake.mk @@ -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 index bbfd707baf..0000000000 --- a/tests/bugs/keep-all.sh +++ /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; diff --git a/tests/language/data-io/get.at b/tests/language/data-io/get.at index e9f2e2ef36..a519b67fe3 100644 --- a/tests/language/data-io/get.at +++ b/tests/language/data-io/get.at @@ -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]) +