SYSFILE INFO: Convert test to Autotest framework.
authorBen Pfaff <blp@cs.stanford.edu>
Tue, 5 Oct 2010 04:30:14 +0000 (21:30 -0700)
committerBen Pfaff <blp@cs.stanford.edu>
Tue, 5 Oct 2010 04:30:14 +0000 (21:30 -0700)
tests/automake.mk
tests/command/sysfile-info.sh [deleted file]
tests/language/dictionary/sys-file-info.at [new file with mode: 0644]

index 0c3296e847c893808f30f06b2983f7b11758de4b..d3054e163883aa03a560f6369248d1162ce75d81 100644 (file)
@@ -10,7 +10,6 @@ TESTS_ENVIRONMENT += LC_ALL=C
 TESTS_ENVIRONMENT += EXEEXT=$(EXEEXT)
 
 dist_TESTS = \
-       tests/command/sysfile-info.sh \
        tests/command/split-file.sh \
        tests/command/t-test-1-indep-val.sh \
        tests/command/t-test-1-sample-missing-anal.sh \
@@ -356,6 +355,7 @@ TESTSUITE_AT = \
        tests/language/dictionary/missing-values.at \
        tests/language/dictionary/mrsets.at \
        tests/language/dictionary/rename-variables.at \
+       tests/language/dictionary/sys-file-info.at \
        tests/language/expressions/evaluate.at \
        tests/language/lexer/variable-parser.at \
        tests/language/stats/aggregate.at \
diff --git a/tests/command/sysfile-info.sh b/tests/command/sysfile-info.sh
deleted file mode 100755 (executable)
index ceafcf5..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-#!/bin/sh
-
-# This program tests that SYSFILE INFO works.
-
-TEMPDIR=/tmp/pspp-tst-$$
-TESTFILE=$TEMPDIR/`basename $0`.sps
-
-# 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
-
-LANG=C
-export LANG
-
-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
-
-activity="Create test file"
-cat > $TESTFILE << EOF
-DATA LIST LIST /x * name (a10) .
-BEGIN DATA
-1 one
-2 two
-3 three
-END DATA.
-SAVE OUTFILE='pro.sav'.
-
-sysfile info file='pro.sav'.
-EOF
-if [ $? -ne 0 ] ; then no_result ; fi
-
-
-activity="run program"
-$SUPERVISOR $PSPP -o pspp.csv $TESTFILE
-if [ $? -ne 0 ] ; then no_result ; fi
-
-activity="filter output"
-egrep -v '^(Created|Endian|Integer Format|Real Format):,' $TEMPDIR/pspp.csv > $TEMPDIR/out-filtered
-if [ $? -ne 0 ] ; then no_result ; fi
-
-activity="compare output"
-diff -c $TEMPDIR/out-filtered - << EOF
-Table: Reading free-form data from INLINE.
-Variable,Format
-x,F8.0
-name,A10
-
-File:,pro.sav
-Label:,No label.
-Variables:,2
-Cases:,3
-Type:,System File
-Weight:,Not weighted.
-Mode:,Compression on.
-Charset:,Unknown
-
-Variable,Description,,Position
-x,Format: F8.2,,1
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-name,Format: A10,,2
-,Measure: Nominal,,
-,Display Alignment: Left,,
-,Display Width: 10,,
-EOF
-if [ $? -ne 0 ] ; then fail ; fi
-
-pass;
diff --git a/tests/language/dictionary/sys-file-info.at b/tests/language/dictionary/sys-file-info.at
new file mode 100644 (file)
index 0000000..14a53fa
--- /dev/null
@@ -0,0 +1,46 @@
+AT_BANNER([SYSFILE INFO])
+
+AT_SETUP([SYSFILE INFO])
+AT_DATA([sysfile-info.sps], [dnl
+DATA LIST LIST /x * name (a10) .
+BEGIN DATA
+1 one
+2 two
+3 three
+END DATA.
+SAVE OUTFILE='pro.sav'.
+
+sysfile info file='pro.sav'.
+])
+AT_CHECK([pspp -o pspp.csv sysfile-info.sps])
+AT_CHECK(
+  [sed -e '/^Created:,/d' \
+       -e '/^Endian:,/d' \
+       -e '/^Integer Format:,/d' \
+       -e '/^Real Format:,/d' pspp.csv],
+  [0], [dnl
+Table: Reading free-form data from INLINE.
+Variable,Format
+x,F8.0
+name,A10
+
+File:,pro.sav
+Label:,No label.
+Variables:,2
+Cases:,3
+Type:,System File
+Weight:,Not weighted.
+Mode:,Compression on.
+Charset:,Unknown
+
+Variable,Description,,Position
+x,Format: F8.2,,1
+,Measure: Scale,,
+,Display Alignment: Right,,
+,Display Width: 8,,
+name,Format: A10,,2
+,Measure: Nominal,,
+,Display Alignment: Left,,
+,Display Width: 10,,
+])
+AT_CLEANUP