64139f9360732dc50059b379621725242bde0212
[pspp] / tests / language / data-io / dataset.at
1 dnl PSPP - a program for statistical analysis.
2 dnl Copyright (C) 2017 Free Software Foundation, Inc.
3 dnl 
4 dnl This program is free software: you can redistribute it and/or modify
5 dnl it under the terms of the GNU General Public License as published by
6 dnl the Free Software Foundation, either version 3 of the License, or
7 dnl (at your option) any later version.
8 dnl 
9 dnl This program is distributed in the hope that it will be useful,
10 dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
11 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 dnl GNU General Public License for more details.
13 dnl 
14 dnl You should have received a copy of the GNU General Public License
15 dnl along with this program.  If not, see <http://www.gnu.org/licenses/>.
16 dnl
17 AT_BANNER([DATASET commands])
18
19 AT_SETUP([DATASET COPY])
20 AT_DATA([dataset.pspp], [dnl
21 DATASET NAME initial.
22 DATA LIST NOTABLE /x 1.
23 COMPUTE x = x + 1.
24 DATASET COPY clone.
25 BEGIN DATA.
26 1
27 2
28 3
29 4
30 5
31 END DATA.
32
33 NEW FILE.
34 DATA LIST NOTABLE /y 1.
35 BEGIN DATA.
36 6
37 7
38 8
39 END DATA.
40 LIST.
41 DATASET DISPLAY.
42
43 DATASET ACTIVATE clone.
44 DATASET DISPLAY.
45 LIST.
46
47 DATASET ACTIVATE initial.
48 DATASET DISPLAY.
49 LIST.
50
51 COMPUTE z=y.
52 DATASET COPY clone.
53
54 DATASET ACTIVATE clone.
55 LIST.
56 DATASET COPY clone.
57 DATASET DISPLAY.
58
59 DATASET CLOSE initial.
60 DATASET DISPLAY.
61 ])
62 AT_CHECK([pspp -O format=csv dataset.pspp], [0], [dnl
63 Table: Data List
64 y
65 6
66 7
67 8
68
69 Table: Open datasets.
70 Dataset
71 clone
72 initial (active dataset)
73
74 Table: Open datasets.
75 Dataset
76 clone (active dataset)
77 initial
78
79 Table: Data List
80 x
81 2
82 3
83 4
84 5
85 6
86
87 Table: Open datasets.
88 Dataset
89 clone
90 initial (active dataset)
91
92 Table: Data List
93 y
94 6
95 7
96 8
97
98 Table: Data List
99 y,z
100 6,6.00
101 7,7.00
102 8,8.00
103
104 Table: Open datasets.
105 Dataset
106 unnamed dataset (active dataset)
107 initial
108
109 Table: Open datasets.
110 Dataset
111 unnamed dataset (active dataset)
112 ])
113 AT_CLEANUP
114
115 AT_SETUP([DATASET DECLARE])
116 AT_DATA([dataset.pspp], [dnl
117 DATASET DECLARE second.
118 DATASET DISPLAY.
119 DATA LIST NOTABLE/x 1.
120 BEGIN DATA.
121 1
122 END DATA.
123 LIST.
124 DATASET ACTIVATE second.
125 DATASET DISPLAY.
126 LIST.
127 ])
128 AT_CHECK([pspp -O format=csv dataset.pspp], [1], [dnl
129 Table: Open datasets.
130 Dataset
131 unnamed dataset (active dataset)
132 second
133
134 Table: Data List
135 x
136 1
137
138 Table: Open datasets.
139 Dataset
140 second (active dataset)
141
142 dataset.pspp:10: error: LIST: LIST is allowed only after the active dataset has been defined.
143 ])
144 AT_CLEANUP
145
146 AT_SETUP([DATASET NAME deletes duplicate name])
147 AT_DATA([dataset.pspp], [dnl
148 DATASET NAME a.
149 DATASET DECLARE b.
150 DATASET DECLARE c.
151 DATASET DISPLAY.
152
153 DATASET NAME b.
154 DATASET NAME c.
155 DATASET DISPLAY.
156 ])
157 AT_CHECK([pspp -O format=csv dataset.pspp], [0], [dnl
158 Table: Open datasets.
159 Dataset
160 a (active dataset)
161 b
162 c
163
164 Table: Open datasets.
165 Dataset
166 c (active dataset)
167 ])
168 AT_CLEANUP
169
170 AT_SETUP([DATASET ACTIVATE deletes unnamed dataset])
171 AT_DATA([dataset.pspp], [dnl
172 DATASET DECLARE x.
173 DATASET DISPLAY.
174
175 DATASET ACTIVATE x.
176 DATASET DISPLAY.
177 ])
178 AT_CHECK([pspp -O format=csv dataset.pspp], [0], [dnl
179 Table: Open datasets.
180 Dataset
181 unnamed dataset (active dataset)
182 x
183
184 Table: Open datasets.
185 Dataset
186 x (active dataset)
187 ])
188 AT_CLEANUP
189
190 AT_SETUP([DATASET ACTIVATE executes pending transformations])
191 AT_DATA([dataset.pspp], [dnl
192 DATASET NAME one.
193 DATASET DECLARE another.
194 DATASET DISPLAY.
195
196 DATA LIST NOTABLE /x 1.
197 PRINT/x.
198 DATASET ACTIVATE another.
199 BEGIN DATA.
200 1
201 2
202 3
203 4
204 5
205 END DATA.
206
207 LIST.
208
209 DATASET ACTIVATE one.
210 LIST.
211 ])
212 AT_CHECK([pspp -O format=csv dataset.pspp], [1], [dnl
213 Table: Open datasets.
214 Dataset
215 another
216 one (active dataset)
217
218 1 @&t@
219
220 2 @&t@
221
222 3 @&t@
223
224 4 @&t@
225
226 5 @&t@
227
228 dataset.pspp:16: error: LIST: LIST is allowed only after the active dataset has been defined.
229
230 Table: Data List
231 x
232 1
233 2
234 3
235 4
236 5
237 ])
238 AT_CLEANUP
239
240 AT_SETUP([DATASET CLOSE])
241 AT_DATA([dataset.pspp], [dnl
242 DATASET DISPLAY
243 DATASET CLOSE *.
244 DATASET DISPLAY.
245
246 DATASET NAME this.
247 DATASET DISPLAY.
248 DATASET CLOSE this.
249 DATASET DISPLAY.
250
251 DATASET NAME this.
252 DATASET DISPLAY.
253 DATASET CLOSE *.
254 DATASET DISPLAY.
255
256 DATASET DECLARE that.
257 DATASET DECLARE theother.
258 DATASET DECLARE yetanother.
259 DATASET DISPLAY.
260 DATASET CLOSE ALL.
261 DATASET DISPLAY.
262
263 DATASET NAME this.
264 DATASET DECLARE that.
265 DATASET DECLARE theother.
266 DATASET DECLARE yetanother.
267 DATASET DISPLAY.
268 DATASET CLOSE ALL.
269 DATASET DISPLAY.
270 ])
271 AT_CHECK([pspp -O format=csv dataset.pspp], [0], [dnl
272 Table: Open datasets.
273 Dataset
274 unnamed dataset (active dataset)
275
276 Table: Open datasets.
277 Dataset
278 unnamed dataset (active dataset)
279
280 Table: Open datasets.
281 Dataset
282 this (active dataset)
283
284 Table: Open datasets.
285 Dataset
286 unnamed dataset (active dataset)
287
288 Table: Open datasets.
289 Dataset
290 this (active dataset)
291
292 Table: Open datasets.
293 Dataset
294 unnamed dataset (active dataset)
295
296 Table: Open datasets.
297 Dataset
298 unnamed dataset (active dataset)
299 that
300 theother
301 yetanother
302
303 Table: Open datasets.
304 Dataset
305 unnamed dataset (active dataset)
306
307 Table: Open datasets.
308 Dataset
309 that
310 theother
311 this (active dataset)
312 yetanother
313
314 Table: Open datasets.
315 Dataset
316 unnamed dataset (active dataset)
317 ])
318 AT_CLEANUP