Checkin of new directory structure.
[pspp-builds.git] / tests / command / print.sh
index 77daac3a24b830b36289ab774c313a64f5721ec8..5ef3faed95854c8a8f0ea6a73820f29039f88962 100755 (executable)
@@ -3,17 +3,23 @@
 # This program tests the PRINT transformation
 
 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`
 
 # 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()
 {
+     cd /
      rm -rf $TEMPDIR
 }
 
@@ -47,57 +53,41 @@ cd $TEMPDIR
 
 # Copy this file --- it's shared with another test
 activity="create data"
-cp $here/data-list.data $TEMPDIR
+cp $top_srcdir/tests/data-list.data $TEMPDIR
 if [ $? -ne 0 ] ; then no_result ; fi
 
 
 activity="create program"
-cat > $TEMPDIR/print.stat <<EOF_print
+cat > $TEMPDIR/print.stat << foobar
 title 'Test PRINT transformation'.
 
-remark EOF
-----------------------------------------------------------------------
-There is no test for DATA LIST FIXED since it is imagined that the
-rest of the tests give it a pretty good workout.
-----------------------------------------------------------------------
-EOF
-remark EOF
-----------------------------------------------------------------------
-Testing use of DATA LIST FREE.
-----------------------------------------------------------------------
-EOF
 data list free table file='$TEMPDIR/data-list.data'/A B C D.
-print outfile="foo" table/A(f8.2) '/' B(e8.2) '/' C(n10) '/' D(rbhex16) '/'.
+print outfile="foo" table/A(f8.2) '/' B(e8.2) '/' C(n10) '/'.
 print space a.
 print outfile="foo" /a b c d.
 list.
 
-remark EOF
-----------------------------------------------------------------------
-Testing use of DATA LIST LIST.
-----------------------------------------------------------------------
-EOF
 data list list table file='$TEMPDIR/data-list.data'/A B C D.
 print table/A B C D.
 list.
 
-EOF_print
+foobar
 if [ $? -ne 0 ] ; then no_result ; fi
 
 
 activity="run program"
-$here/../src/pspp -o raw-ascii --testing-mode $TEMPDIR/print.stat > $TEMPDIR/errs
+$SUPERVISOR $top_builddir/src/pspp --testing-mode -o raw-ascii --testing-mode $TEMPDIR/print.stat > $TEMPDIR/errs
 # Note   vv   --- there are errors in input.  Therefore, the  command must FAIL
 if [ $? -eq 0 ] ; then fail ; fi
 
 activity="compare error messages"
 diff -w $TEMPDIR/errs - <<EOF
 $TEMPDIR/data-list.data:1: error: (columns 1-5, field type F8.0) Field does not form a valid floating-point constant.
-$TEMPDIR/data-list.data:1: warning: LIST: The expression on PRINT SPACE evaluated to -2147483648.  It's not possible to PRINT SPACE a negative number of lines.
+$TEMPDIR/data-list.data:1: warning: LIST: The expression on PRINT SPACE evaluated to the system-missing value.
 $TEMPDIR/data-list.data:2: error: (columns 1-8, field type F8.0) Field does not form a valid floating-point constant.
-$TEMPDIR/data-list.data:4: warning: LIST: The expression on PRINT SPACE evaluated to -2147483648.  It's not possible to PRINT SPACE a negative number of lines.
+$TEMPDIR/data-list.data:4: warning: LIST: The expression on PRINT SPACE evaluated to the system-missing value.
 $TEMPDIR/data-list.data:4: error: (columns 3-12, field type F8.0) Field does not form a valid floating-point constant.
-$TEMPDIR/data-list.data:6: warning: LIST: The expression on PRINT SPACE evaluated to -2147483648.  It's not possible to PRINT SPACE a negative number of lines.
+$TEMPDIR/data-list.data:6: warning: LIST: The expression on PRINT SPACE evaluated to the system-missing value.
 $TEMPDIR/data-list.data:1: error: (columns 1-5, field type F8.0) Field does not form a valid floating-point constant.
 $TEMPDIR/data-list.data:2: error: (columns 1-8, field type F8.0) Field does not form a valid floating-point constant.
 $TEMPDIR/data-list.data:2: warning: LIST: Missing value(s) for all variables from C onward.  These will be filled with the system-missing value or blanks, as appropriate.
@@ -109,19 +99,11 @@ $TEMPDIR/data-list.data:6: warning: LIST: Missing value(s) for all variables fro
 EOF
 if [ $? -ne 0 ] ; then fail ; fi
 
-cp $TEMPDIR/pspp.list /tmp/out
-activity="compare output"
-diff -b -B $TEMPDIR/pspp.list - << EOF
-----------------------------------------------------------------------
-There is no test for DATA LIST FIXED since it is imagined that the
-rest of the tests give it a pretty good workout.
-----------------------------------------------------------------------
-
-----------------------------------------------------------------------
-Testing use of DATA LIST FREE.
-----------------------------------------------------------------------
 
-1.1 DATA LIST.  Reading free-form data from file 
+activity="compare output"
+perl -pi -e 's/^\s*$//g' $TEMPDIR/pspp.list
+diff -b  $TEMPDIR/pspp.list - << EOF
+1.1 DATA LIST.  Reading free-form data from "$TEMPDIR/data-list.data".
 +--------+------+
 |Variable|Format|
 #========#======#
@@ -130,35 +112,23 @@ Testing use of DATA LIST FREE.
 |C       |F8.0  |
 |D       |F8.0  |
 +--------+------+
-
-2.1 PRINT.  Writing   1 records to file "foo".
-+--------+------+-------+-------+
-|Variable|Record|Columns| Format|
-#========#======#=======#=======#
-|A       |     1|  1-  8|F8.2   |
-|"/"     |     1|  9-  9|A1     |
-|B       |     1| 10- 17|E8.2   |
-|"/"     |     1| 18- 18|A1     |
-|C       |     1| 19- 28|N10.0  |
-|"/"     |     1| 29- 29|A1     |
-|D       |     1| 30- 45|RBHEX16|
-|"/"     |     1| 46- 46|A1     |
-+--------+------+-------+-------+
-
-
+2.1 PRINT.  Writing 1 record to "foo".
++--------+------+-------+------+
+|Variable|Record|Columns|Format|
+#========#======#=======#======#
+|A       |     1|  1-  8|F8.2  |
+|"/"     |     1|  9-  9|A1    |
+|B       |     1| 10- 17|E8.2  |
+|"/"     |     1| 18- 18|A1    |
+|C       |     1| 19- 28|N10.0 |
+|"/"     |     1| 29- 29|A1    |
++--------+------+-------+------+
        A        B        C        D
 -------- -------- -------- --------
      .       2.00     3.00     4.00 
-
      .       6.00     7.00     8.00 
-
      .      10.00    11.00    12.00 
-
-----------------------------------------------------------------------
-Testing use of DATA LIST LIST.
-----------------------------------------------------------------------
-
-3.1 DATA LIST.  Reading free-form data from file 
+3.1 DATA LIST.  Reading free-form data from "$TEMPDIR/data-list.data".
 +--------+------+
 |Variable|Format|
 #========#======#
@@ -167,8 +137,7 @@ Testing use of DATA LIST LIST.
 |C       |F8.0  |
 |D       |F8.0  |
 +--------+------+
-
-4.1 PRINT.  Writing   1 records to the listing file.
+4.1 PRINT.  Writing 1 record.
 +--------+------+-------+------+
 |Variable|Record|Columns|Format|
 #========#======#=======#======#
@@ -178,7 +147,6 @@ Testing use of DATA LIST LIST.
 |D       |     1| 28- 35|F8.2  |
 +--------+------+-------+------+
      .       2.00     3.00     4.00 
-
        A        B        C        D
 -------- -------- -------- --------
      .       2.00     3.00     4.00 
@@ -198,11 +166,11 @@ if [ $? -ne 0 ] ; then fail ; fi
 
 activity="compare print out"
 diff $TEMPDIR/foo - << EOF
-     .  /2.00E+00/0000000003/0000000000001040/
+     .  /2.00E+00/0000000003/
      .       2.00     3.00     4.00 
-     .  /6.00E+00/0000000007/0000000000002040/
+     .  /6.00E+00/0000000007/
      .       6.00     7.00     8.00 
-     .  /1.00E+01/0000000011/0000000000002840/
+     .  /1.00E+01/0000000011/
      .      10.00    11.00    12.00 
 EOF
 if [ $? -ne 0 ] ; then fail ; fi