checkin of 0.3.0
[pspp-builds.git] / tests / syntax
1 #! /bin/sh
2 set -e
3 RESULT=pass
4
5 srcdir=${srcdir:-.}
6 for x in `cd $srcdir; echo *.stat *.data`; do 
7     if [ ! -e $x ]; then
8         ln -s $srcdir/$x .
9     fi
10 done
11
12 rm -f *.actual
13 if [ -z "$BENCHMARK" ]; then
14     for x in *.stat; do
15         echo -n "$x ... "
16         ../src/pspp --testing-mode $x >$x.actual
17         if [ -f $srcdir/expect/$x ]; then
18             if diff -u $srcdir/expect/$x $x.actual; then 
19                 echo "pass"; rm $x.actual
20             else 
21                 echo "FAIL"; RESULT=fail
22             fi
23         else
24             if [ -s $x.actual ]; then 
25                 echo "FAIL"; RESULT=fail
26             else 
27                 echo "pass"; rm $x.actual
28             fi
29         fi
30     done
31 else
32     mkdir benchmark || true
33     rm -f benchmark/*
34     for x in *.stat; do
35         echo -n "$x ... "
36         ../src/pspp --testing-mode $x > benchmark/$x
37         if [ ! -s benchmark/$x ]; then
38             rm benchmark/$x
39         fi
40         echo
41     done
42 fi
43
44 for x in *.stat *.data; do
45     if [ -h $x ]; then
46         rm $x
47     fi
48 done
49
50 if [ $RESULT = fail ]; then exit 1; fi
51