Added test for a bug in crosstab.q which caused a crash
authorJohn Darrington <john@darrington.wattle.id.au>
Tue, 16 Dec 2003 06:54:44 +0000 (06:54 +0000)
committerJohn Darrington <john@darrington.wattle.id.au>
Tue, 16 Dec 2003 06:54:44 +0000 (06:54 +0000)
tests/bugs/README [new file with mode: 0644]
tests/bugs/crosstabs.sh [new file with mode: 0755]

diff --git a/tests/bugs/README b/tests/bugs/README
new file mode 100644 (file)
index 0000000..32ed754
--- /dev/null
@@ -0,0 +1,2 @@
+This directory contains some tests for bugs which have been 
+experienced in the past and which are (hopefully) now fixed.
diff --git a/tests/bugs/crosstabs.sh b/tests/bugs/crosstabs.sh
new file mode 100755 (executable)
index 0000000..4bd6e47
--- /dev/null
@@ -0,0 +1,80 @@
+#!/bin/sh
+
+# This program tests for a bug which crashed pspp when doing a crosstabs
+
+TEMPDIR=/tmp/pspp-tst-$$
+
+here=`pwd`;
+
+# ensure that top_srcdir is absolute
+cd $top_srcdir; top_srcdir=`pwd`
+
+export STAT_CONFIG_PATH=$top_srcdir/config
+
+
+cleanup()
+{
+     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 program"
+cat > $TEMPDIR/ct.stat <<EOF
+DATA LIST FIXED
+     / x   1-2
+       y   3
+       z   4.
+
+BEGIN DATA.
+0111 
+0222 
+0311 
+0412 
+0521 
+0612 
+0711 
+0811 
+0912 
+END DATA.
+
+LIST.
+
+
+CROSSTABS TABLES  y by z.
+
+EOF
+if [ $? -ne 0 ] ; then no_result ; fi
+
+
+$here/../src/pspp $TEMPDIR/ct.stat
+if [ $? -ne 0 ] ; then fail ; fi
+
+
+pass;