Internationalisation.
[pspp-builds.git] / tests / command / flip.sh
1 #!/bin/sh
2
3 # This program tests the flip command
4
5 TEMPDIR=/tmp/pspp-tst-$$
6 TESTFILE=$TEMPDIR/`basename $0`.sps
7
8 # ensure that top_builddir  are absolute
9 if [ -z "$top_builddir" ] ; then top_builddir=. ; fi
10 if [ -z "$top_srcdir" ] ; then top_srcdir=. ; fi
11 top_builddir=`cd $top_builddir; pwd`
12 PSPP=$top_builddir/src/ui/terminal/pspp
13
14 # ensure that top_srcdir is absolute
15 top_srcdir=`cd $top_srcdir; pwd`
16
17 STAT_CONFIG_PATH=$top_srcdir/config
18 export STAT_CONFIG_PATH
19
20 LANG=C
21 export LANG
22
23 cleanup()
24 {
25      cd /
26      rm -rf $TEMPDIR
27 }
28
29
30 fail()
31 {
32     echo $activity
33     echo FAILED
34     cleanup;
35     exit 1;
36 }
37
38
39 no_result()
40 {
41     echo $activity
42     echo NO RESULT;
43     cleanup;
44     exit 2;
45 }
46
47 pass()
48 {
49     cleanup;
50     exit 0;
51 }
52
53 mkdir -p $TEMPDIR
54
55 cd $TEMPDIR
56
57 activity="create flip.stat"
58 cat > $TEMPDIR/flip.stat <<EOF
59 data list /N 1 (a) A B C D 2-9.
60 list.
61 begin data.
62 v 1 2 3 4 5
63 w 6 7 8 910
64 x1112131415
65 y1617181920
66 z2122232425
67 end data.
68 flip newnames=n.
69 list.
70 flip.
71 list.
72 EOF
73 if [ $? -ne 0 ] ; then no_result ; fi
74
75
76 activity="run program"
77 $SUPERVISOR $PSPP -o raw-ascii $TEMPDIR/flip.stat
78 if [ $? -ne 0 ] ; then no_result ; fi
79
80 activity="compare output"
81 perl -pi -e 's/^\s*$//g' $TEMPDIR/pspp.list
82 diff  -b  $TEMPDIR/pspp.list - << EOF
83 1.1 DATA LIST.  Reading 1 record from INLINE.
84 +--------+------+-------+------+
85 |Variable|Record|Columns|Format|
86 #========#======#=======#======#
87 |N       |     1|  1-  1|A1    |
88 |A       |     1|  2-  3|F2.0  |
89 |B       |     1|  4-  5|F2.0  |
90 |C       |     1|  6-  7|F2.0  |
91 |D       |     1|  8-  9|F2.0  |
92 +--------+------+-------+------+
93 N  A  B  C  D
94 - -- -- -- --
95 v  1  2  3  4 
96 w  6  7  8  9 
97 x 11 12 13 14 
98 y 16 17 18 19 
99 z 21 22 23 24 
100 CASE_LBL        V        W        X        Y        Z
101 -------- -------- -------- -------- -------- --------
102 A            1.00     6.00    11.00    16.00    21.00 
103 B            2.00     7.00    12.00    17.00    22.00 
104 C            3.00     8.00    13.00    18.00    23.00 
105 D            4.00     9.00    14.00    19.00    24.00 
106 CASE_LBL        A        B        C        D
107 -------- -------- -------- -------- --------
108 V            1.00     2.00     3.00     4.00 
109 W            6.00     7.00     8.00     9.00 
110 X           11.00    12.00    13.00    14.00 
111 Y           16.00    17.00    18.00    19.00 
112 Z           21.00    22.00    23.00    24.00 
113 EOF
114 if [ $? -ne 0 ] ; then fail ; fi
115
116
117 pass;