* command/print.sh: Get rid of RBHEX output. It wasn't worth much.
[pspp] / tests / command / match-files.sh
index 092c49ebc30d033be65302d7fbba1be892e01dab..bb4729391cbd9e248bcd3924ae9ec0b3a74dc852 100755 (executable)
@@ -113,9 +113,9 @@ A B C D INA INB
 EOF
 
 # Test nonparallel match and table lookup.
-dla="data list notable file='a.data' /a b c 1-3 (a)."
+dla="data list notable file='a.data' /A B C 1-3 (a)."
 sa="save outfile='a.sys'."
-dlb="data list notable file='b.data' /a b c 1-3 (a)."
+dlb="data list notable file='b.data' /A B C 1-3 (a)."
 sb="save outfile='b.sys'."
 for types in ff ft; do
     type1=file
@@ -134,21 +134,21 @@ $dla
 $sa
 $dlb
 $sb
-match files $type1='a.sys' /in=ina /$type2='b.sys' /in=inb /rename c=D /by a.
+match files $type1='a.sys' /in=INA /$type2='b.sys' /in=INB /rename c=D /by a.
 EOF
            elif [ $sources = sa ]; then
                cat <<EOF
 $dla
 $sa
 $dlb
-match files $type1='a.sys' /in=ina /$type2=* /in=inb /rename c=D /by a.
+match files $type1='a.sys' /in=INA /$type2=* /in=INB /rename c=D /by a.
 EOF
            elif [ $sources = as ]; then
                cat <<EOF
 $dlb
 $sb
 $dla
-match files $type1=* /in=ina /$type2='b.sys' /in=inb /rename c=D /by a.
+match files $type1=* /in=INA /$type2='b.sys' /in=INB /rename c=D /by a.
 EOF
            else
                activity="internal error"
@@ -176,7 +176,7 @@ $dla
 $sa
 $dlb
 $sb
-match files file='a.sys' /file='b.sys' /rename (a b c=d e f).
+match files file='a.sys' /file='b.sys' /rename (a b c=D E F).
 list.
 EOF
 if [ $? -ne 0 ] ; then no_result ; fi
@@ -205,4 +205,43 @@ A B C D E F
 EOF
 if [ $? -ne 0 ] ; then fail ; fi
 
+# Test bug handling TABLE from active file found by John Darrington.
+name="active-table"
+activity="create $name.pspp"
+cat > $name.pspp <<EOF
+DATA LIST LIST NOTABLE /x * y *.
+BEGIN DATA
+3 30
+2 21
+1 22
+END DATA.
+
+SAVE OUTFILE='bar.sav'.
+
+DATA LIST LIST NOTABLE /x * z *.
+BEGIN DATA
+3 8
+2 9
+END DATA.
+
+MATCH FILES TABLE=* /FILE='bar.sav' /BY=x.
+LIST.
+EOF
+if [ $? -ne 0 ] ; then no_result ; fi
+
+activity="run $name.pspp"
+$SUPERVISOR $here/../src/pspp -o raw-ascii $name.pspp >/dev/null 2>&1
+if [ $? -ne 0 ] ; then no_result ; fi
+
+activity="check $name output"
+diff -b -w -B - pspp.list <<EOF
+        x        z        y
+ -------- -------- --------
+     3.00     8.00    30.00 
+     2.00      .      21.00 
+     1.00      .      22.00 
+EOF
+if [ $? -ne 0 ] ; then fail ; fi
+
+
 pass;