LIST: Allow a subset of the CASES settings to be specified.
[pspp] / tests / language / data-io / list.at
1 AT_BANNER([LIST])
2
3 AT_SETUP([LIST plain cases])
4 AT_DATA([data.txt], [dnl
5    18    1
6    19    7
7    20   26
8    21   76
9    22   57
10    23   58
11    24   38
12    25   38
13    26   30
14    27   21
15    28   23
16 ])
17 AT_DATA([list.sps], [dnl
18 DATA LIST FILE='data.txt'/avar 1-5 bvar 6-10.
19 WEIGHT BY bvar.
20 LIST.
21 ])
22 AT_CHECK([pspp -o pspp.csv list.sps])
23 AT_CHECK([cat pspp.csv], [0], [dnl
24 Table: Reading 1 record from `data.txt'.
25 Variable,Record,Columns,Format
26 avar,1,1-  5,F5.0
27 bvar,1,6- 10,F5.0
28
29 Table: Data List
30 avar,bvar
31 18,1
32 19,7
33 20,26
34 21,76
35 22,57
36 23,58
37 24,38
38 25,38
39 26,30
40 27,21
41 28,23
42 ])
43 AT_CLEANUP
44
45 AT_SETUP([LIST numbered cases])
46 AT_DATA([data.txt], [dnl
47    18    1
48    19    7
49    20   26
50    21   76
51    22   57
52    23   58
53    24   38
54    25   38
55    26   30
56    27   21
57    28   23
58 ])
59 AT_DATA([list.sps], [dnl
60 DATA LIST FILE='data.txt'/avar 1-5 bvar 6-10.
61 WEIGHT BY bvar.
62 LIST/FORMAT NUMBERED.
63 ])
64 AT_CHECK([pspp -o pspp.csv list.sps])
65 AT_CHECK([cat pspp.csv], [0], [dnl
66 Table: Reading 1 record from `data.txt'.
67 Variable,Record,Columns,Format
68 avar,1,1-  5,F5.0
69 bvar,1,6- 10,F5.0
70
71 Table: Data List
72 Case Number,avar,bvar
73 1,18,1
74 2,19,7
75 3,20,26
76 4,21,76
77 5,22,57
78 6,23,58
79 7,24,38
80 8,25,38
81 9,26,30
82 10,27,21
83 11,28,23
84 ])
85 AT_CLEANUP
86
87 # Checks for a crash when LIST did not include the variables from SPLIT
88 # FILE in the same positions (bug #30684).
89 AT_SETUP([LIST with split file])
90 AT_DATA([data.txt], [dnl
91 a 1
92 a 2
93 a 3
94 b 1
95 c 4
96 c 5
97 ])
98 AT_DATA([list.sps], [dnl
99 DATA LIST LIST NOTABLE FILE='data.txt'/s (a1) n.
100 SPLIT FILE BY s.
101 LIST n.
102 ])
103 AT_CHECK([pspp -o pspp.csv list.sps])
104 AT_CHECK([cat pspp.csv], [0], [dnl
105 Variable,Value,Label
106 s,a,
107
108 Table: Data List
109 n
110 1.00
111 2.00
112 3.00
113
114 Variable,Value,Label
115 s,b,
116
117 Table: Data List
118 n
119 1.00
120
121 Variable,Value,Label
122 s,c,
123
124 Table: Data List
125 n
126 4.00
127 5.00
128 ])
129 AT_CLEANUP
130
131 AT_SETUP([LIST lots of variables])
132 AT_DATA([data.txt], [dnl
133 767532466348513789073483106409
134 888693089424177542378334186760
135 492611507909187152726427852242
136 819848892023195875879332001491
137 452777898709563729845541516650
138 239961967077732760663525115073
139 ])
140 AT_DATA([list.sps], [dnl
141 DATA LIST FILE='data.txt' NOTABLE/x01 to x30 1-30.
142 LIST.
143 ])
144 AT_CHECK([pspp -o pspp.csv list.sps])
145 AT_CHECK([cat pspp.csv], [0], [dnl
146 Table: Data List
147 x01,x02,x03,x04,x05,x06,x07,x08,x09,x10,x11,x12,x13,x14,x15,x16,x17,x18,x19,x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30
148 7,6,7,5,3,2,4,6,6,3,4,8,5,1,3,7,8,9,0,7,3,4,8,3,1,0,6,4,0,9
149 8,8,8,6,9,3,0,8,9,4,2,4,1,7,7,5,4,2,3,7,8,3,3,4,1,8,6,7,6,0
150 4,9,2,6,1,1,5,0,7,9,0,9,1,8,7,1,5,2,7,2,6,4,2,7,8,5,2,2,4,2
151 8,1,9,8,4,8,8,9,2,0,2,3,1,9,5,8,7,5,8,7,9,3,3,2,0,0,1,4,9,1
152 4,5,2,7,7,7,8,9,8,7,0,9,5,6,3,7,2,9,8,4,5,5,4,1,5,1,6,6,5,0
153 2,3,9,9,6,1,9,6,7,0,7,7,7,3,2,7,6,0,6,6,3,5,2,5,1,1,5,0,7,3
154 ])
155 AT_CLEANUP
156
157 AT_SETUP([LIST selected cases])
158 AT_DATA([data.txt], [dnl
159 7675324663
160 8886930894
161 4926115079
162 8198488920
163 4527778987
164 2399619670
165 1667799691
166 1623914684
167 3681393233
168 6418731145
169 2284534083
170 6617637452
171 9865713582
172 1163234537
173 9981663637
174 6821567746
175 0952774952
176 1641790193
177 3763182871
178 2046820753
179 7970620091
180 4841176017
181 6949973797
182 1396285996
183 0700489524
184 ])
185 AT_DATA([list.sps], [dnl
186 DATA LIST FILE='data.txt' NOTABLE/x0 to x9 1-10.
187 LIST /CASES=FROM 6 TO 20 BY 5.
188 LIST /CASES=4.
189 LIST /CASES=BY 10.
190 LIST /CASES=FROM 25.
191 LIST /CASES=FROM 26.
192 ])
193 AT_CHECK([pspp -o pspp.csv list.sps])
194 AT_CHECK([cat pspp.csv], [0], [dnl
195 Table: Data List
196 x0,x1,x2,x3,x4,x5,x6,x7,x8,x9
197 2,3,9,9,6,1,9,6,7,0
198 2,2,8,4,5,3,4,0,8,3
199 6,8,2,1,5,6,7,7,4,6
200
201 Table: Data List
202 x0,x1,x2,x3,x4,x5,x6,x7,x8,x9
203 7,6,7,5,3,2,4,6,6,3
204 8,8,8,6,9,3,0,8,9,4
205 4,9,2,6,1,1,5,0,7,9
206 8,1,9,8,4,8,8,9,2,0
207
208 Table: Data List
209 x0,x1,x2,x3,x4,x5,x6,x7,x8,x9
210 7,6,7,5,3,2,4,6,6,3
211 2,2,8,4,5,3,4,0,8,3
212 7,9,7,0,6,2,0,0,9,1
213
214 Table: Data List
215 x0,x1,x2,x3,x4,x5,x6,x7,x8,x9
216 0,7,0,0,4,8,9,5,2,4
217
218 Table: Data List
219 x0,x1,x2,x3,x4,x5,x6,x7,x8,x9
220 ])
221 AT_CLEANUP
222
223 dnl This program tests for a bug which caused a buffer overflow
224 dnl when the list command attempted to write very long strings.
225 AT_SETUP([LIST very long string])
226 AT_DATA([list.sps], [dnl
227 INPUT PROGRAM.
228 STRING foo (a2000).
229 + COMPUTE foo=CONCAT(RPAD('A',1999, 'x'), 'Z').
230 END CASE.
231 END FILE.
232 END INPUT PROGRAM.
233
234 EXECUTE.
235
236 DISPLAY VARIABLES.
237
238 LIST.
239 ])
240 AT_CHECK([pspp -o pspp.csv list.sps])
241 AT_CHECK([cat pspp.csv], [0], [dnl
242 Variable,Description,Position
243 foo,Format: A2000,1
244
245 Table: Data List
246 foo
247 AxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxZ
248 ])
249 AT_CLEANUP