Fix missing @clicksequence problem with older Texinfo versions.
[pspp-builds.git] / tests / command / get-data-txt-importcases.sh
1 #!/bin/sh
2
3 # This program tests the IMPORTCASES feature of GET DATA /TYPE=TXT.
4
5 TEMPDIR=/tmp/pspp-tst-$$
6 TESTFILE=$TEMPDIR/`basename $0`.sps
7 : ${PERL:=perl}
8
9 # ensure that top_builddir  are absolute
10 if [ -z "$top_builddir" ] ; then top_builddir=. ; fi
11 if [ -z "$top_srcdir" ] ; then top_srcdir=. ; fi
12 top_builddir=`cd $top_builddir; pwd`
13 PSPP=$top_builddir/src/ui/terminal/pspp
14
15 # ensure that top_srcdir is absolute
16 top_srcdir=`cd $top_srcdir; pwd`
17
18 STAT_CONFIG_PATH=$top_srcdir/config
19 export STAT_CONFIG_PATH
20
21
22 cleanup()
23 {
24      if [ x"$PSPP_TEST_NO_CLEANUP" != x ] ; then 
25         echo "NOT cleaning $TEMPDIR" 
26         return ; 
27      fi
28      cd /
29      rm -rf $TEMPDIR
30 }
31
32
33 fail()
34 {
35     echo $activity
36     echo FAILED
37     cleanup;
38     exit 1;
39 }
40
41
42 no_result()
43 {
44     echo $activity
45     echo NO RESULT;
46     cleanup;
47     exit 2;
48 }
49
50 pass()
51 {
52     cleanup;
53     exit 0;
54 }
55
56 mkdir -p $TEMPDIR
57
58 cd $TEMPDIR
59
60 activity="create data file using Perl"
61 $PERL > test.data <<'EOF'
62 for ($i = 1; $i <= 100; $i++) {
63     printf "%02d\n", $i;
64 }
65 EOF
66 if [ $? -ne 0 ] ; then no_result ; fi
67
68 # Create command file.
69 activity="create program"
70 cat > $TESTFILE << EOF
71 get data /type=txt /file='test.data' /importcases=first 10 /variables x f8.0.
72 list.
73
74 get data /type=txt /file='test.data' /importcases=percent 1 /variables x f8.0.
75 list.
76
77 get data /type=txt /file='test.data' /importcases=percent 35 /variables x f8.0.
78 list.
79
80 get data /type=txt /file='test.data' /importcases=percent 95 /variables x f8.0.
81 list.
82
83 get data /type=txt /file='test.data' /importcases=percent 100 /variables x f8.0.
84 list.
85 EOF
86 if [ $? -ne 0 ] ; then no_result ; fi
87
88 activity="run program"
89 $SUPERVISOR $PSPP --testing-mode $TESTFILE
90 if [ $? -ne 0 ] ; then fail ; fi
91
92 activity="compare output"
93 perl -pi -e 's/^\s*$//g' $TEMPDIR/pspp.list
94 diff -b  $TEMPDIR/pspp.list - << EOF
95        x
96 --------
97        1
98        2
99        3
100        4
101        5
102        6
103        7
104        8
105        9
106       10
107        x
108 --------
109        1
110        2
111        x
112 --------
113        1
114        2
115        3
116        4
117        5
118        6
119        7
120        8
121        9
122       10
123       11
124       12
125       13
126       14
127       15
128       16
129       17
130       18
131       19
132       20
133       21
134       22
135       23
136       24
137       25
138       26
139       27
140       28
141       29
142       30
143       31
144       32
145       33
146       34
147       35
148       36
149        x
150 --------
151        1
152        2
153        3
154        4
155        5
156        6
157        7
158        8
159        9
160       10
161       11
162       12
163       13
164       14
165       15
166       16
167       17
168       18
169       19
170       20
171       21
172       22
173       23
174       24
175       25
176       26
177       27
178       28
179       29
180       30
181       31
182       32
183       33
184       34
185       35
186       36
187       37
188       38
189       39
190       40
191       41
192       42
193       43
194       44
195       45
196       46
197       47
198       48
199       49
200       50
201       51
202       52
203       53
204       54
205       55
206       56
207       57
208       58
209       59
210       60
211       61
212       62
213       63
214       64
215       65
216       66
217       67
218       68
219       69
220       70
221       71
222       72
223       73
224       74
225       75
226       76
227       77
228       78
229       79
230       80
231       81
232       82
233       83
234       84
235       85
236       86
237       87
238       88
239       89
240       90
241       91
242       92
243       93
244       94
245       95
246       96
247        x
248 --------
249        1
250        2
251        3
252        4
253        5
254        6
255        7
256        8
257        9
258       10
259       11
260       12
261       13
262       14
263       15
264       16
265       17
266       18
267       19
268       20
269       21
270       22
271       23
272       24
273       25
274       26
275       27
276       28
277       29
278       30
279       31
280       32
281       33
282       34
283       35
284       36
285       37
286       38
287       39
288       40
289       41
290       42
291       43
292       44
293       45
294       46
295       47
296       48
297       49
298       50
299       51
300       52
301       53
302       54
303       55
304       56
305       57
306       58
307       59
308       60
309       61
310       62
311       63
312       64
313       65
314       66
315       67
316       68
317       69
318       70
319       71
320       72
321       73
322       74
323       75
324       76
325       77
326       78
327       79
328       80
329       81
330       82
331       83
332       84
333       85
334       86
335       87
336       88
337       89
338       90
339       91
340       92
341       93
342       94
343       95
344       96
345       97
346       98
347       99
348      100
349 EOF
350 if [ $? -ne 0 ] ; then fail ; fi
351
352 pass;