1 AT_BANNER([system file reader - positive])
3 AT_SETUP([variable labels and missing values])
4 AT_KEYWORDS([sack synthetic system file positive])
5 AT_DATA([sys-file.sack], [dnl
7 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
9 28; dnl Nominal case size
14 "01 Jan 11"; "20:53:52";
15 "PSPP synthetic test file: "; i8 244; i8 245; i8 246; i8 248; s34 "";
18 dnl Numeric variable, no label or missing values.
19 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
21 dnl Numeric variable, variable label.
22 2; 0; 1; 0; 0x050800 *2; s8 "NUM2";
23 32; "Numeric variable 2's label ("; i8 249; i8 250; i8 251; ")";
25 dnl Numeric variable, one missing value.
26 2; 0; 0; 1; 0x050800 *2; s8 "NUM3";
29 dnl Numeric variable, variable label and missing value.
30 2; 0; 1; 1; 0x050800 *2; s8 "NUM4";
31 30; "Another numeric variable label"; i8 0 * 2;
34 dnl Numeric variable, two missing values.
35 2; 0; 0; 2; 0x050800 *2; s8 "NUM5"; 1.0; 2.0;
37 dnl Numeric variable, three missing values.
38 2; 0; 0; 3; 0x050800 *2; s8 "NUM6"; 1.0; 2.0; 3.0;
40 dnl Numeric variable, range of missing values.
41 2; 0; 0; -2; 0x050800 *2; s8 "NUM7"; 1.0; 3.0;
43 dnl Numeric variables, range of missing values plus discrete value.
44 2; 0; 0; -3; 0x050800 *2; s8 "NUM8"; 1.0; 3.0; 5.0;
45 2; 0; 0; -3; 0x050800 *2; s8 "NUM9"; 1.0; HIGHEST; -5.0;
46 2; 0; 0; -3; 0x050800 *2; "NUM"; i8 192; i8 200; i8 204; i8 209; i8 210;
49 dnl String variable, no label or missing values.
50 2; 4; 0; 0; 0x010400 *2; s8 "STR1";
52 dnl String variable, variable label.
53 2; 4; 1; 0; 0x010400 *2; s8 "STR2";
54 25; "String variable 2's label"; i8 0 * 3;
56 dnl String variable, one missing value.
57 2; 4; 0; 1; 0x010400 *2; s8 "STR3"; s8 "MISS";
59 dnl String variable, variable label and missing value.
60 2; 4; 1; 1; 0x010400 *2; s8 "STR4";
61 29; "Another string variable label"; i8 0 * 3;
64 dnl String variable, two missing values.
65 2; 4; 0; 2; 0x010400 *2; s8 "STR5"; s8 "MISS"; s8 "OTHR";
67 dnl String variable, three missing values.
68 2; 4; 0; 3; 0x010400 *2; s8 "STR6"; s8 "MISS"; s8 "OTHR"; s8 "MORE";
70 dnl Long string variable, one missing value.
71 dnl (This is not how SPSS represents missing values for long strings--it
72 dnl uses a separate record as shown later below--but old versions of PSPP
73 dnl did use this representation so we continue supporting it for backward
75 2; 11; 0; 1; 0x010b00 *2; s8 "STR7"; "first8by";
76 2; -1; 0; 0; 0; 0; s8 "";
78 dnl Long string variables that will have missing values added with a
80 2; 9; 0; 0; 0x010900 *2; s8 "STR8";
81 2; -1; 0; 0; 0; 0; s8 "";
82 2; 10; 0; 0; 0x010a00 *2; s8 "STR9";
83 2; -1; 0; 0; 0; 0; s8 "";
84 2; 11; 0; 0; 0x010b00 *2; s8 "STR10";
85 2; -1; 0; 0; 0; 0; s8 "";
87 dnl Long string variable, value label.
88 2; 25; 1; 0; 0x011900 *2; s8 "STR11"; 14; "25-byte string"; i8 0 * 2;
89 ( 2; -1; 0; 0; 0; 0; s8 ""; ) * 2;
90 dnl Variable label fields on continuation records have been spotted in system
91 dnl files created by "SPSS Power Macintosh Release 6.1".
92 2; -1; 1; 0; 0; 0; s8 ""; 20; "dummy variable label";
94 dnl Machine integer info record.
95 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
97 dnl Machine floating-point info record.
98 7; 4; 8; 3; SYSMIS; HIGHEST; LOWEST;
100 dnl Long string variable missing values record.
102 dnl One missing value for STR8.
103 COUNT("STR8"); i8 1; 8; "abcdefgh";
105 dnl Two missing values for STR9.
106 COUNT("STR9"); i8 2; 8; "abcdefgh"; 8; "01234567";
108 dnl Three missing values for STR9.
109 COUNT("STR10"); i8 3; 8; "abcdefgh"; 8; "01234567"; 8; "0 ";
112 dnl Character encoding record.
113 7; 20; 1; 12; "windows-1252";
115 dnl Dictionary termination record.
119 1.0; 2.0; 3.0; 4.0; 5.0; 6.0; 7.0; 8.0; 9.0; 10.0;
120 s8 "abcd"; s8 "efgh"; s8 "ijkl"; s8 "mnop"; s8 "qrst"; s8 "uvwx";
121 s16 "yzABCDEFGHI"; s16 "JKLMNOPQR"; s16 "STUVWXYZ01";
122 s16 "23456789abc"; s32 "defghijklmnopqstuvwxyzABC";
125 "be ae072375af73d628a544cc2230dd72c9" \
126 "le 039a21ab64f68c65b240e782a6b0f563"
129 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
131 AT_DATA([sys-file.sps], [dnl
132 GET FILE='sys-file.sav'.
137 AT_CHECK([pspp -o pspp.csv sys-file.sps])
138 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
139 File label: PSPP synthetic test file: ôõöø
141 Variable,Description,,Position
143 num2,Numeric variable 2's label (ùúû),,2
147 num4,Another numeric variable label,,4
151 ,Missing Values: 1; 2,,
153 ,Missing Values: 1; 2; 3,,
155 ,Missing Values: 1 THRU 3,,
157 ,Missing Values: 1 THRU 3; 5,,
159 ,Missing Values: 1 THRU HIGHEST; -5,,
160 numàèìñò,Format: F8.0,,10
161 ,Missing Values: LOWEST THRU 1; 5,,
163 str2,String variable 2's label,,12
166 ,"Missing Values: ""MISS""",,
167 str4,Another string variable label,,14
169 ,"Missing Values: ""OTHR""",,
171 ,"Missing Values: ""MISS""; ""OTHR""",,
173 ,"Missing Values: ""MISS""; ""OTHR""; ""MORE""",,
175 ,"Missing Values: ""first8by""",,
177 ,"Missing Values: ""abcdefgh""",,
179 ,"Missing Values: ""abcdefgh""; ""01234567""",,
180 str10,Format: A11,,20
181 ,"Missing Values: ""abcdefgh""; ""01234567""; ""0 """,,
182 str11,25-byte string,,21
186 num1,num2,num3,num4,num5,num6,num7,num8,num9,numàèìñò,str1,str2,str3,str4,str5,str6,str7,str8,str9,str10,str11
187 1,2,3,4,5,6,7,8,9,10,abcd,efgh,ijkl,mnop,qrst,uvwx,yzABCDEFGHI,JKLMNOPQR,STUVWXYZ01,23456789abc,defghijklmnopqstuvwxyzABC
192 AT_SETUP([unspecified number of variable positions])
193 AT_KEYWORDS([sack synthetic system file positive])
194 AT_DATA([sys-file.sack], [dnl
196 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
198 -1; dnl Nominal case size (unspecified)
199 0; dnl Not compressed
203 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
206 dnl Numeric variable, no label or missing values.
207 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
209 dnl Numeric variable, variable label.
210 2; 0; 1; 0; 0x050800 *2; s8 "NUM2";
211 26; "Numeric variable 2's label"; i8 0 *2;
213 dnl Dictionary termination record.
220 "be 413e7bc80a47fcd7e4c8020e8e120060" \
221 "le d7db9120b1ff28c83aa6fe9fc405d903"
224 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
226 AT_DATA([sys-file.sps], [dnl
227 GET FILE='sys-file.sav'.
231 AT_CHECK([pspp -o pspp.csv sys-file.sps])
232 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
233 Variable,Description,,Position
235 num2,Numeric variable 2's label,,2
245 AT_SETUP([wrong number of variable positions but version 13])
246 AT_KEYWORDS([sack synthetic system file positive])
247 AT_DATA([sys-file.sack], [dnl
249 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
251 -1; dnl Nominal case size (unspecified)
252 0; dnl Not compressed
256 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
259 dnl Numeric variable, no label or missing values.
260 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
262 dnl Numeric variable, variable label.
263 2; 0; 1; 0; 0x050800 *2; s8 "NUM2";
264 26; "Numeric variable 2's label"; i8 0 *2;
266 dnl Machine integer info record (SPSS 13).
267 7; 3; 4; 8; 13; 2; 3; -1; 1; 1; ENDIAN; 1252;
269 dnl Dictionary termination record.
276 "be 3d17aae7d99538dc73c5cb42692b1038" \
277 "le 8ad1000df598617d5258f323c882d749"
280 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
282 AT_DATA([sys-file.sps], [dnl
283 GET FILE='sys-file.sav'.
287 AT_CHECK([pspp -o pspp.csv sys-file.sps])
288 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
289 Variable,Description,,Position
291 num2,Numeric variable 2's label,,2
301 AT_SETUP([value labels])
302 AT_KEYWORDS([sack synthetic system file positive])
303 AT_DATA([sys-file.sack], [dnl
305 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
307 22; dnl Nominal case size
308 0; dnl Not compressed
312 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
315 dnl Numeric variables.
316 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
317 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
318 2; 0; 0; 0; 0x050800 *2; s8 "NUM3";
319 2; 0; 0; 0; 0x050800 *2; s8 "NUM4";
320 2; 0; 0; 0; 0x050800 *2; s8 "NUM5";
322 dnl String variables.
323 2; 1; 0; 0; 0x010100 *2; s8 "STR1"; dnl index 6
324 2; 2; 0; 0; 0x010200 *2; s8 "STR2"; dnl index 7
325 2; 3; 0; 0; 0x010300 *2; s8 "STR3"; dnl index 8
326 2; 4; 0; 0; 0x010400 *2; s8 "STR4"; dnl index 9
327 2; 4; 0; 0; 0x010400 *2; s8 "STR5"; dnl index 10
328 2; 6; 0; 0; 0x010600 *2; s8 "STR6"; dnl index 11
329 2; 7; 0; 0; 0x010700 *2; s8 "STR7"; dnl index 12
330 2; 8; 0; 0; 0x010800 *2; s8 "STR8"; dnl index 13
331 2; 9; 0; 0; 0x010900 *2; "STR9"; i8 230; s3 ""; dnl index 14
332 2; -1; 0; 0; 0; 0; s8 "";
333 2; 12; 0; 0; 0x010c00 *2; s8 "STR12"; dnl index 16
334 2; -1; 0; 0; 0; 0; s8 "";
335 2; 16; 0; 0; 0x011000 *2; s8 "STR16"; dnl index 18
336 2; -1; 0; 0; 0; 0; s8 "";
337 2; 17; 0; 0; 0x011100 *2; s8 "STR17"; dnl index 20
338 ( 2; -1; 0; 0; 0; 0; s8 ""; ) * 2;
340 dnl One value label for NUM1.
341 3; 1; 1.0; i8 17; i8 238; i8 228; i8 232; i8 237; s19 " (in Russian)"; 4; 1; 1;
343 dnl Two value labels for NUM2, as a single pair of type 3 and type 4 records.
344 3; 2; 1.0; i8 3; s7 "one"; 2.0; i8 3; s7 "two"; 4; 1; 2;
346 dnl Two value labels for NUM3, as two pairs of type 3 and type 4 records.
347 3; 1; 3.0; i8 5; s7 "three"; 4; 1; 3;
348 3; 1; 4.0; i8 4; s7 "four"; 4; 1; 3;
350 dnl Two common value labels for NUM4 and NUM5, plus two different ones for each.
351 3; 1; 5.0; i8 4; s7 "five"; 4; 1; 4;
352 3; 1; 6.0; i8 3; s7 "six"; 4; 1; 5;
353 3; 2; 7.0; i8 5; s7 "seven"; 8.0; i8 5; s7 "eight"; 4; 2; 4; 5;
354 3; 1; 9.0; i8 4; s7 "nine"; 4; 1; 4;
355 3; 1; 10.0; i8 3; s7 "ten"; 4; 1; 5;
357 dnl One value label for STR1.
358 3; 1; s8 "a"; i8 19; s23 "value label for `a'"; 4; 1; 6;
360 dnl Two value labels for STR2, as a single pair of type 3 and type 4 records.
362 s8 "bc"; i8 20; s23 "value label for `bc'";
363 s8 "de"; i8 20; s23 "value label for `de'";
366 dnl Two value labels for STR3, as two pairs of type 3 and type 4 records.
367 3; 1; s8 "fgh"; i8 21; s23 "value label for `fgh'"; 4; 1; 8;
368 3; 1; s8 "ijk"; i8 21; s23 "value label for `ijk'"; 4; 1; 8;
370 dnl Two common value labels for STR4 and STR5, plus two different ones for each.
371 3; 1; s8 "lmno"; i8 22; s23 "value label for `lmno'"; 4; 1; 9;
372 3; 1; s8 "pqrs"; i8 22; s23 "value label for `pqrs'"; 4; 1; 10;
374 s8 "tuvw"; i8 22; s23 "value label for `tuvw'";
375 s8 "xyzA"; i8 22; s23 "value label for `xyzA'";
377 3; 1; s8 "BCDE"; i8 22; s23 "value label for `BCDE'"; 4; 1; 9;
378 3; 1; s8 "FGHI"; i8 22; s23 "value label for `FGHI'"; 4; 1; 10;
380 dnl One value label for STR6, STR7, STR8.
381 3; 1; s8 "JKLMNO"; i8 24; s31 "value label for `JKLMNO'"; 4; 1; 11;
382 3; 1; s8 "JKLMNOP"; i8 25; s31 "value label for `JKLMNOP'"; 4; 1; 12;
383 3; 1; s8 "JKLMNOPQ"; i8 26; s31 "value label for `JKLMNOPQ'"; 4; 1; 13;
385 dnl Machine integer info record.
386 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1251;
388 dnl Character encoding record.
389 7; 20; 1; 12; "windows-1251";
392 dnl One value label for STR9ж,
393 COUNT("STR9"; i8 230); 9; 1; COUNT("RSTUVWXYZ"); COUNT("value label for `RSTUVWXYZ'");
395 dnl Two value labels for STR12.
396 COUNT("STR12"); 12; 2;
397 COUNT("0123456789ab"); COUNT("value label for `0123456789ab'");
398 COUNT("cdefghijklmn"); COUNT("value label for `cdefghijklmn'");
400 dnl Three value labels for STR16.
401 COUNT("STR16"); 16; 3;
402 COUNT("opqrstuvwxyzABCD"); COUNT("value label for `opqrstuvwxyzABCD'");
403 COUNT("EFGHIJKLMNOPQRST"); COUNT("value label for `EFGHIJKLMNOPQRST'");
404 COUNT("UVWXYZ0123456789"); COUNT("value label for `UVWXYZ0123456789' with Cyrillic letters: `"; i8 244; i8 245; i8 246; "'");
406 dnl One value label for STR17.
407 COUNT("STR17"); 17; 1;
408 COUNT("abcdefghijklmnopq"); COUNT("value label for `abcdefghijklmnopq'");
411 dnl Dictionary termination record.
415 "be b27d766d8a5ad9e901c8b244591a5942" \
416 "le eb2e93f3cc29acd605b80e6c3af25ba6"
419 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
421 AT_DATA([sys-file.sps], [dnl
422 GET FILE='sys-file.sav'.
425 AT_CHECK([pspp -o pspp.csv sys-file.sps])
426 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
427 Variable,Description,,Position
429 ,1,один (in Russian),
447 ,a,value label for `a',
449 ,bc,value label for `bc',
450 ,de,value label for `de',
452 ,fgh,value label for `fgh',
453 ,ijk,value label for `ijk',
455 ,BCDE,value label for `BCDE',
456 ,lmno,value label for `lmno',
457 ,tuvw,value label for `tuvw',
458 ,xyzA,value label for `xyzA',
460 ,FGHI,value label for `FGHI',
461 ,pqrs,value label for `pqrs',
462 ,tuvw,value label for `tuvw',
463 ,xyzA,value label for `xyzA',
465 ,JKLMNO,value label for `JKLMNO',
467 ,JKLMNOP,value label for `JKLMNOP',
469 ,JKLMNOPQ,value label for `JKLMNOPQ',
471 ,RSTUVWXYZ,value label for `RSTUVWXYZ',
472 str12,Format: A12,,15
473 ,0123456789ab,value label for `0123456789ab',
474 ,cdefghijklmn,value label for `cdefghijklmn',
475 str16,Format: A16,,16
476 ,EFGHIJKLMNOPQRST,value label for `EFGHIJKLMNOPQRST',
477 ,UVWXYZ0123456789,value label for `UVWXYZ0123456789' with Cyrillic letters: `фхц',
478 ,opqrstuvwxyzABCD,value label for `opqrstuvwxyzABCD',
479 str17,Format: A17,,17
480 ,abcdefghijklmnopq,value label for `abcdefghijklmnopq',
485 AT_SETUP([documents])
486 AT_KEYWORDS([sack synthetic system file positive])
487 AT_DATA([sys-file.sack], [dnl
489 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
491 1; dnl Nominal case size
492 0; dnl Not compressed
496 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
499 dnl Numeric variable, no label or missing values.
500 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
502 dnl Machine integer info record.
503 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
507 s80 "First line of documents";
508 s80 "Second line of documents";
509 "abb"; i8 233; " appliqu"; i8 233; " attach"; i8 233; " blas"; i8 233; " caf"; i8 233; " canap"; i8 233; " clich"; i8 233; " consomm"; i8 233;
512 s80 "Last line of documents";
514 dnl Character encoding record.
515 7; 20; 1; 12; "windows-1252";
517 dnl Dictionary termination record.
524 "be 3555f74f3e714a3a703de7df56ce6d24" \
525 "le ede5a0f805a1aab096ea86abf677ff34"
528 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
530 AT_DATA([sys-file.sps], [dnl
531 GET FILE='sys-file.sav'.
535 AT_CHECK([pspp -o pspp.csv sys-file.sps])
536 AT_CHECK([cat pspp.csv], [0], [dnl
537 Documents in the active dataset:
539 First line of documents
541 Second line of documents
543 abbé appliqué attaché blasé café canapé cliché consommé
547 Last line of documents
556 AT_SETUP([multiple response sets])
557 AT_KEYWORDS([sack synthetic system file positive])
558 AT_DATA([sys-file.sack], [dnl
560 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
562 16; dnl Nominal case size
563 0; dnl Not compressed
567 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
571 2; 0; 0; 0; 0x050800 *2; i8 0x82; i8 0xa0; s6 "";
572 2; 0; 0; 0; 0x050800 *2; s8 "B";
573 2; 0; 0; 0; 0x050800 *2; s8 "C";
576 2; 0; 0; 0; 0x050800 *2; s8 "D";
577 2; 0; 0; 0; 0x050800 *2; s8 "E";
578 2; 0; 0; 0; 0x050800 *2; s8 "F";
579 2; 0; 0; 0; 0x050800 *2; s8 "G";
582 2; 4; 0; 0; 0x010400 *2; s8 "H";
583 2; 4; 0; 0; 0x010400 *2; s8 "I";
584 2; 4; 0; 0; 0x010400 *2; s8 "J";
587 2; 0; 0; 0; 0x050800 *2; s8 "K";
588 2; 0; 0; 0; 0x050800 *2; s8 "L";
589 2; 0; 0; 0; 0x050800 *2; s8 "M";
592 2; 6; 0; 0; 0x010600 *2; s8 "N";
593 2; 6; 0; 0; 0x010600 *2; s8 "O";
594 2; 6; 0; 0; 0x010600 *2; s8 "P";
596 dnl Machine integer info record.
597 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 932;
601 "$a=C 10 my mcgroup "; i8 0x82; i8 0xa0; " b c"; i8 10;
602 "$b=D2 55 0 g e f d"; i8 10;
603 "$c=D4 "; i8 0x82; i8 0xcd; i8 0x82; i8 0xa2; " 10 mdgroup #2 h i j"; i8 10);
607 "$d=E 1 2 34 13 third mdgroup k l m"; i8 10;
608 "$e=E 11 6 choice 0 n o p"; i8 10);
610 dnl Character encoding record.
611 7; 20; 1; 9; "shift_jis";
613 dnl Dictionary termination record.
617 "be fdf260a05220e08c748967dcb90d8b15" \
618 "le 4c9b0c0636bc0aa0cc16684c8188d1c7"
621 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
623 AT_DATA([sys-file.sps], [dnl
624 GET FILE='sys-file.sav'.
625 MRSETS /DISPLAY NAME=ALL.
627 AT_CHECK([pspp -o pspp.csv sys-file.sps])
628 AT_CHECK([cat pspp.csv], [0], [dnl
629 Table: Multiple Response Sets
630 Name,Variables,Details
634 ","Multiple category set
641 ","Multiple dichotomy set
643 Category label source: Variable labels
648 ","Multiple dichotomy set
650 Label source: Provided by user
652 Category label source: Variable labels
657 ","Multiple dichotomy set
659 Label source: Provided by user
661 Category label source: Value labels of counted value
666 ","Multiple dichotomy set
667 Label source: First variable label among variables
668 Counted value: `choice'
669 Category label source: Value labels of counted value
675 dnl Also checks for handling of CR-only line ends in file label and
676 dnl extra product info.
677 AT_SETUP([extra product info])
678 AT_KEYWORDS([sack synthetic system file positive])
679 AT_DATA([sys-file.sack], [dnl
681 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
683 4; dnl Nominal case size
684 0; dnl Not compressed
688 "01 Jan 11"; "20:53:52"; "PSPP synthetic"; i8 13; s49 "test file";
691 dnl Numeric variables.
692 2; 0; 0; 0; 0x050800 *2; s8 "A";
693 2; 0; 0; 0; 0x050800 *2; s8 "B";
694 2; 0; 0; 0; 0x050800 *2; s8 "C";
695 2; 0; 0; 0; 0x050800 *2; s8 "D";
697 dnl Extra product info.
698 7; 10; 1; COUNT ("Extra product info"; i8 13; "another line"; i8 13; "blah");
700 dnl Dictionary termination record.
704 "be 0e1cac77501322b012637dcaeb3858ab" \
705 "le ecffd25cae41bbc89c29487abe192016"
708 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
710 AT_DATA([sys-file.sps], [dnl
711 SYSFILE INFO FILE='sys-file.sav'.
713 AT_CHECK([pspp -o pspp.csv sys-file.sps])
714 AT_CHECK([sed 7q pspp.csv], [0], [dnl
716 Label:,"PSPP synthetic
718 Created:,01 Jan 11 20:53:52 by $(@%:@) SPSS DATA FILE PSPP synthetic test file
719 Product:,"Extra product info
726 AT_SETUP([variable display parameters, without width])
727 AT_KEYWORDS([sack synthetic system file positive])
728 AT_DATA([sys-file.sack], [dnl
730 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
732 19; dnl Nominal case size
733 0; dnl Not compressed
737 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
740 dnl Numeric variables.
741 2; 0; 0; 0; 0x050800 *2; s8 "A";
742 2; 0; 0; 0; 0x050800 *2; s8 "B";
743 2; 0; 0; 0; 0x050800 *2; s8 "C";
744 2; 0; 0; 0; 0x050800 *2; s8 "D";
746 dnl Short string variables.
747 2; 3; 0; 0; 0x010300 *2; s8 "H";
748 2; 3; 0; 0; 0x010300 *2; s8 "I";
749 2; 3; 0; 0; 0x010300 *2; s8 "J";
750 2; 3; 0; 0; 0x010300 *2; s8 "K";
752 dnl Long string variables.
753 2; 9; 0; 0; 0x010900 *2; s8 "L";
754 2; -1; 0; 0; 0; 0; s8 "";
755 2; 10; 0; 0; 0x010a00 *2; s8 "M";
756 2; -1; 0; 0; 0; 0; s8 "";
757 2; 17; 0; 0; 0x011100 *2; s8 "N";
758 ( 2; -1; 0; 0; 0; 0; s8 "" ) * 2;
759 2; 25; 0; 0; 0x011900 *2; s8 "O";
760 ( 2; -1; 0; 0; 0; 0; s8 "" ) * 3;
762 dnl Variable display parameters
777 dnl Dictionary termination record.
781 "be c130d9345080579b8862b360924edbfa" \
782 "le 6fde96f5a7c7386bff6cca049cd84d6a"
785 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
787 AT_DATA([sys-file.sps], [dnl
788 GET FILE='sys-file.sav'.
791 AT_CHECK([pspp -o pspp.csv sys-file.sps])
792 AT_CHECK([cat pspp.csv], [0], [dnl
793 Variable,Description,,Position
796 ,Display Alignment: Left,,
800 ,Display Alignment: Left,,
804 ,Display Alignment: Left,,
808 ,Display Alignment: Right,,
812 ,Display Alignment: Right,,
816 ,Display Alignment: Right,,
820 ,Display Alignment: Center,,
824 ,Display Alignment: Center,,
828 ,Display Alignment: Center,,
832 ,Display Alignment: Left,,
836 ,Display Alignment: Right,,
840 ,Display Alignment: Center,,
846 AT_SETUP([variable display parameters, with width])
847 AT_KEYWORDS([sack synthetic system file positive])
848 AT_DATA([sys-file.sack], [dnl
850 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
852 19; dnl Nominal case size
853 0; dnl Not compressed
857 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
860 dnl Numeric variables.
861 2; 0; 0; 0; 0x050800 *2; s8 "A";
862 2; 0; 0; 0; 0x050800 *2; s8 "B";
863 2; 0; 0; 0; 0x050800 *2; s8 "C";
864 2; 0; 0; 0; 0x050800 *2; s8 "D";
866 dnl Short string variables.
867 2; 3; 0; 0; 0x010300 *2; s8 "H";
868 2; 3; 0; 0; 0x010300 *2; s8 "I";
869 2; 3; 0; 0; 0x010300 *2; s8 "J";
870 2; 3; 0; 0; 0x010300 *2; s8 "K";
872 dnl Long string variables.
873 2; 9; 0; 0; 0x010900 *2; s8 "L";
874 2; -1; 0; 0; 0; 0; s8 "";
875 2; 10; 0; 0; 0x010a00 *2; s8 "M";
876 2; -1; 0; 0; 0; 0; s8 "";
877 2; 17; 0; 0; 0x011100 *2; s8 "N";
878 ( 2; -1; 0; 0; 0; 0; s8 "" ) * 2;
879 2; 25; 0; 0; 0x011900 *2; s8 "O";
880 ( 2; -1; 0; 0; 0; 0; s8 "" ) * 3;
882 dnl Variable display parameters
897 dnl Dictionary termination record.
901 "be 3ace75689a0b7faa9360936bbfe26055" \
902 "le 6e93f35d19a9882eb53ffb1b067ef7cd"
905 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
907 AT_DATA([sys-file.sps], [dnl
908 GET FILE='sys-file.sav'.
911 AT_CHECK([pspp -o pspp.csv sys-file.sps])
912 AT_CHECK([cat pspp.csv], [0], [dnl
913 Variable,Description,,Position
916 ,Display Alignment: Left,,
920 ,Display Alignment: Left,,
924 ,Display Alignment: Left,,
928 ,Display Alignment: Right,,
932 ,Display Alignment: Right,,
936 ,Display Alignment: Right,,
940 ,Display Alignment: Center,,
944 ,Display Alignment: Center,,
948 ,Display Alignment: Center,,
952 ,Display Alignment: Left,,
956 ,Display Alignment: Right,,
960 ,Display Alignment: Center,,
966 AT_SETUP([long variable names])
967 AT_KEYWORDS([sack synthetic system file positive])
968 AT_DATA([sys-file.sack], [dnl
970 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
972 7; dnl Nominal case size
973 0; dnl Not compressed
977 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
980 dnl Numeric variables.
981 2; 0; 0; 0; 0x050800 *2; s8 "LONGVARI";
982 2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_A";
983 2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_B";
984 2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_C";
985 2; 0; 0; 0; 0x050800 *2; "CO"; i8 214; "RDINA";
986 2; 0; 0; 0; 0x050800 *2; "CO"; i8 214; "RDI_A";
987 2; 0; 0; 0; 0x050800 *2; "CO"; i8 214; "RDI_B";
989 dnl Machine integer info record.
990 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
992 dnl Machine floating-point info record.
993 7; 4; 8; 3; SYSMIS; HIGHEST; LOWEST;
995 dnl Long variable names.
997 "LONGVARI=LongVariableName1"; i8 9;
998 "LONGVA_A=LongVariableName2"; i8 9;
999 "LONGVA_B=LongVariableName3"; i8 9;
1000 "LONGVA_C=LongVariableName4"; i8 9;
1001 "CO"; i8 214; "RDINA=Co"; i8 246; "rdinate_X"; i8 9;
1002 "CO"; i8 214; "RDI_A=Co"; i8 246; "rdinate_Y"; i8 9;
1003 "CO"; i8 214; "RDI_B=Co"; i8 246; "rdinate_Z";
1006 dnl Character encoding record.
1007 7; 20; 1; 12; "windows-1252";
1009 dnl Dictionary termination record.
1013 "be 8ea5a72f3ae6e732371e92a7719c3951" \
1014 "le 02bcf02cf08b1e8fc80a858101ae22fc"
1017 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1019 AT_DATA([sys-file.sps], [dnl
1020 GET FILE='sys-file.sav'.
1023 AT_CHECK([pspp -o pspp.csv sys-file.sps])
1024 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
1025 Variable,Description,,Position
1026 LongVariableName1,Format: F8.0,,1
1027 LongVariableName2,Format: F8.0,,2
1028 LongVariableName3,Format: F8.0,,3
1029 LongVariableName4,Format: F8.0,,4
1030 Coördinate_X,Format: F8.0,,5
1031 Coördinate_Y,Format: F8.0,,6
1032 Coördinate_Z,Format: F8.0,,7
1037 AT_SETUP([very long strings])
1038 AT_KEYWORDS([sack synthetic system file positive])
1039 AT_DATA([sys-file.sack], [dnl
1041 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1043 109; dnl Nominal case size
1044 0; dnl Not compressed
1048 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
1051 dnl 256-byte string.
1052 2; 255; 0; 0; 0x01FF00 *2; "S"; i8 201; s6 "Q256";
1053 (2; -1; 0; 0; 0; 0; s8 "") * 31;
1054 2; 4; 0; 0; 0x010400 *2; "S"; i8 201; "Q256_1";
1056 dnl 600-byte string.
1057 2; 255; 0; 0; 0x01FF00 *2; s8 "STR600";
1058 (2; -1; 0; 0; 0; 0; s8 "") * 31;
1059 2; 255; 0; 0; 0x01FF00 *2; s8 "STR600_1";
1060 (2; -1; 0; 0; 0; 0; s8 "") * 31;
1061 2; 96; 0; 0; 0x016000 *2; s8 "STR600_2";
1062 (2; -1; 0; 0; 0; 0; s8 "") * 11;
1064 dnl Machine integer info record.
1065 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
1067 dnl Very long string record.
1069 "S"; i8 201; "Q256=00256"; i8 0; i8 9;
1070 "STR600=00600"; i8 0; i8 9;
1073 dnl Character encoding record.
1074 7; 20; 1; 12; "windows-1252";
1076 dnl Dictionary termination record.
1080 "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#" * 4;
1082 "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#" * 9;
1083 "abcdefghijklmnopqrstuvwxyzABCDEF";
1086 "be 844a4704f669dfe292482e587d690133" \
1087 "le b76025f602bdff6a42c1e0795a8b62ff"
1090 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1092 AT_DATA([sys-file.sps], [dnl
1093 GET FILE='sys-file.sav'.
1097 AT_CHECK([pspp -o pspp.csv sys-file.sps])
1098 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
1099 Variable,Description,,Position
1100 séq256,Format: A256,,1
1101 str600,Format: A600,,2
1105 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@a,abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789@#abcdefghijklmnopqrstuvwxyz
1110 AT_SETUP([data file and variable attributes])
1111 AT_KEYWORDS([sack synthetic system file positive])
1112 AT_DATA([sys-file.sack], [dnl
1114 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1116 2; dnl Nominal case size
1117 0; dnl Not compressed
1121 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
1125 2; 0; 0; 0; 0x050800 *2; s8 "FIRSTVAR";
1126 2; 0; 0; 0; 0x050800 *2; s8 "SECONDVA";
1128 dnl Machine integer info record.
1129 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
1131 dnl Long variable names.
1133 "FIRSTVAR=FirstVariable"; i8 9;
1134 "SECONDVA=S"; i8 233; "condVariable"; i8 9;
1137 dnl Data file attributes record.
1139 "Attr1('Value1'"; i8 10; "''d"; i8 233; "claration''"; i8 10; ")";
1140 "S"; i8 233; "condAttr('123'"; i8 10; "'456'"; i8 10; ")";
1143 dnl Variable attributes record.
1146 "ad"; i8 232; "le('23'"; i8 10; "'34'"; i8 10; ")";
1147 "bert('123'"; i8 10; ")";
1148 "$@Role('1'"; i8 10; ")";
1149 "/S"; i8 233; "condVariable:";
1150 "xyzzy('quux'"; i8 10; ")";
1154 dnl Character encoding record.
1155 7; 20; 1; 12; "windows-1252";
1157 dnl Dictionary termination record.
1161 "be 7fff0c04f697adf45f55d8be4aaa8712" \
1162 "le 7331339199344aa58bc60d7d05d538a7"
1165 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1167 AT_DATA([sys-file.sps], [dnl
1168 GET FILE='sys-file.sav'.
1169 DISPLAY @ATTRIBUTES.
1171 AT_CHECK([pspp -o pspp.csv sys-file.sps])
1172 AT_CHECK([cat pspp.csv], [0],
1173 [[Variable,Description,
1174 FirstVariable,Custom attributes:,
1179 SécondVariable,Custom attributes:,
1182 Table: Custom data file attributes.
1185 Attr1[2],'déclaration'
1189 AT_DATA([sys-file.sps], [dnl
1190 GET FILE='sys-file.sav'.
1193 AT_CHECK([pspp -o pspp.csv sys-file.sps])
1194 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0],
1195 [[Variable,Description,,Position
1196 FirstVariable,Format: F8.0,,1
1198 ,Custom attributes:,,
1202 SécondVariable,Format: F8.0,,2
1203 ,Custom attributes:,,
1206 Table: Custom data file attributes.
1209 Attr1[2],'déclaration'
1216 AT_SETUP([variable roles])
1217 AT_KEYWORDS([sack synthetic system file positive])
1218 AT_DATA([sys-file.sack], [dnl
1220 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1222 7; dnl Nominal case size
1223 0; dnl Not compressed
1227 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
1231 2; 0; 0; 0; 0x050800 *2; s8 "I";
1232 2; 0; 0; 0; 0x050800 *2; s8 "O";
1233 2; 0; 0; 0; 0x050800 *2; s8 "B";
1234 2; 0; 0; 0; 0x050800 *2; s8 "N";
1235 2; 0; 0; 0; 0x050800 *2; s8 "P";
1236 2; 0; 0; 0; 0x050800 *2; s8 "S";
1237 2; 0; 0; 0; 0x050800 *2; s8 "X";
1239 dnl Machine integer info record.
1240 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
1242 dnl Variable attributes record.
1244 "I:$@Role('0'"; i8 10; ")";
1245 "/O:$@Role('1'"; i8 10; ")";
1246 "/B:$@Role('2'"; i8 10; ")";
1247 "/N:$@Role('3'"; i8 10; ")";
1248 "/P:$@Role('4'"; i8 10; ")";
1249 "/S:$@Role('5'"; i8 10; ")";
1250 "/X:$@Role('6'"; i8 10; ")";
1253 dnl Character encoding record.
1254 7; 20; 1; 12; "windows-1252";
1256 dnl Dictionary termination record.
1260 "be b08b39cd005682f680d132d272f5158d" \
1261 "le 176e4ac91197f5cb8732258033cfabdc"
1264 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1266 AT_DATA([sys-file.sps], [dnl
1267 GET FILE='sys-file.sav'.
1270 AT_CHECK([pspp -o pspp.csv sys-file.sps], [0], [dnl
1271 warning: `sys-file.sav': Invalid role for variable x.
1273 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
1274 warning: `sys-file.sav': Invalid role for variable x.
1276 Variable,Description,,Position
1293 AT_SETUP([compressed data])
1294 AT_KEYWORDS([sack synthetic system file positive])
1295 AT_DATA([sys-file.sack], [dnl
1297 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1299 6; dnl Nominal case size
1300 1; dnl Not compressed
1302 -1; dnl Unspecified number of cases.
1304 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
1307 dnl Numeric variables.
1308 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1309 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
1311 dnl String variable.
1312 2; 4; 0; 0; 0x010400 *2; s8 "STR4";
1313 2; 8; 0; 0; 0x010800 *2; s8 "STR8";
1314 2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
1315 2; -1; 0; 0; 0; 0; s8 "";
1317 dnl Dictionary termination record.
1320 dnl Compressed data.
1321 i8 1 100 254 253 254 253; i8 255 251; "abcdefgh"; s8 "0123";
1322 i8 253 253 253 254; i8 101 102 253 253; s8 "jklm"; s8 "nopqrstu";
1323 s8 "vwxyzABC"; s8 "DEFG"; s8 "HIJKLMNO";
1324 i8 254 253 252 0 0 0 0 0; s8 "PQRSTUVW";
1328 "be c0670e436b068f45710b98f6f7d01dc5" \
1329 "le 2e43a7f8861df4e714a192dfb3c8b2f4"
1332 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1334 AT_DATA([sys-file.sps], [dnl
1335 GET FILE='sys-file.sav'.
1339 AT_CHECK([pspp -o pspp.csv sys-file.sps])
1340 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
1341 Variable,Description,,Position
1342 num1,Format: F8.0,,1
1343 num2,Format: F8.0,,2
1346 str15,Format: A15,,5
1349 num1,num2,str4,str8,str15
1350 -99,0,,abcdefgh,0123 @&t@
1351 .,151,jklm,nopqrstu,vwxyzABC @&t@
1352 1,2,DEFG,HIJKLMNO,PQRSTUV
1357 AT_SETUP([compressed data, zero bias])
1358 AT_KEYWORDS([sack synthetic system file positive])
1359 AT_DATA([sys-file.sack], [dnl
1361 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1363 6; dnl Nominal case size
1364 1; dnl Not compressed
1366 -1; dnl Unspecified number of cases.
1368 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
1371 dnl Numeric variables.
1372 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1373 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
1375 dnl String variable.
1376 2; 4; 0; 0; 0x010400 *2; s8 "STR4";
1377 2; 8; 0; 0; 0x010800 *2; s8 "STR8";
1378 2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
1379 2; -1; 0; 0; 0; 0; s8 "";
1381 dnl Dictionary termination record.
1384 dnl Compressed data.
1385 i8 1 100 254 253 254 253; i8 255 251; "abcdefgh"; s8 "0123";
1386 i8 253 253 253 254; i8 101 102 253 253; s8 "jklm"; s8 "nopqrstu";
1387 s8 "vwxyzABC"; s8 "DEFG"; s8 "HIJKLMNO";
1388 i8 254 253 252 0 0 0 0 0; s8 "PQRSTUVW";
1392 "be 2f0d25704ee497ae833213a3e4ff5e8b" \
1393 "le 49f68a9e1ba02a2f7e9166686a0db9d9"
1396 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1398 AT_DATA([sys-file.sps], [dnl
1399 GET FILE='sys-file.sav'.
1403 AT_CHECK([pspp -o pspp.csv sys-file.sps], [0])
1404 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
1405 Variable,Description,,Position
1406 num1,Format: F8.0,,1
1407 num2,Format: F8.0,,2
1410 str15,Format: A15,,5
1413 num1,num2,str4,str8,str15
1414 1,100,,abcdefgh,0123 @&t@
1415 .,251,jklm,nopqrstu,vwxyzABC @&t@
1416 101,102,DEFG,HIJKLMNO,PQRSTUV
1421 AT_SETUP([compressed data, other bias])
1422 AT_KEYWORDS([sack synthetic system file positive])
1423 AT_DATA([sys-file.sack], [dnl
1425 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1427 6; dnl Nominal case size
1428 1; dnl Not compressed
1430 -1; dnl Unspecified number of cases.
1432 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
1435 dnl Numeric variables.
1436 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1437 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
1439 dnl String variable.
1440 2; 4; 0; 0; 0x010400 *2; s8 "STR4";
1441 2; 8; 0; 0; 0x010800 *2; s8 "STR8";
1442 2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
1443 2; -1; 0; 0; 0; 0; s8 "";
1445 dnl Dictionary termination record.
1448 dnl Compressed data.
1449 i8 1 100 254 253 254 253; i8 255 251; "abcdefgh"; s8 "0123";
1450 i8 253 253 253 254; i8 101 102 253 253; s8 "jklm"; s8 "nopqrstu";
1451 s8 "vwxyzABC"; s8 "DEFG"; s8 "HIJKLMNO";
1452 i8 254 253 252 0 0 0 0 0; s8 "PQRSTUVW";
1456 "be 668b85e3dee0797883e9933a096b8c18" \
1457 "le 5e7a9c4e88cd2dbc2322943da663868e"
1460 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1462 AT_DATA([sys-file.sps], [dnl
1463 GET FILE='sys-file.sav'.
1467 AT_CHECK([pspp -o pspp.csv sys-file.sps], [0],
1468 [warning: `sys-file.sav' near offset 0x54: Compression bias is not the usual value of 100, or system file uses unrecognized floating-point format.
1470 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
1471 "warning: `sys-file.sav' near offset 0x54: Compression bias is not the usual value of 100, or system file uses unrecognized floating-point format."
1473 Variable,Description,,Position
1474 num1,Format: F8.0,,1
1475 num2,Format: F8.0,,2
1478 str15,Format: A15,,5
1481 num1,num2,str4,str8,str15
1482 -49,50,,abcdefgh,0123 @&t@
1483 .,201,jklm,nopqrstu,vwxyzABC @&t@
1484 51,52,DEFG,HIJKLMNO,PQRSTUV
1489 AT_BANNER([system file reader - negative])
1491 AT_SETUP([misplaced type 4 record])
1492 AT_KEYWORDS([sack synthetic system file negative])
1493 AT_DATA([sys-file.sack], [dnl
1495 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1496 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1498 dnl Numeric variable.
1499 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1505 "be 6e0bb549fff1fd1af333d51b8a6e0f43" \
1506 "le 7b62734edcee2a1689c463f2866d11b8"
1509 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1511 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1513 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1514 [error: `sys-file.sav' near offset 0xd4: Misplaced type 4 record.
1519 AT_SETUP([bad record type])
1520 AT_KEYWORDS([sack synthetic system file negative])
1521 AT_DATA([sys-file.sack], [dnl
1523 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1524 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1526 dnl Numeric variable.
1527 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1529 dnl Type 8 record (not a valid type).
1533 "be dc8f078c23046ee7db74ec1003178a11" \
1534 "le dc7f111642f0629f4370630fd092eee3"
1537 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1539 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1541 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1542 [error: `sys-file.sav' near offset 0xd4: Unrecognized record type 8.
1547 AT_SETUP([wrong number of variable positions])
1548 AT_KEYWORDS([sack synthetic system file negative])
1549 AT_DATA([sys-file.sack], [dnl
1551 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1552 2; >>2<<; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1554 dnl Numeric variable.
1555 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1557 dnl End of dictionary.
1561 "be c57e91aa426f61813c3ad91ea3a56dda" \
1562 "le 5d1a6c114b135b219473c8ad5bb44bda"
1565 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1567 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1569 AT_CHECK([pspp -O format=csv sys-file.sps], [0],
1570 [warning: `sys-file.sav': File header claims 2 variable positions but 1 were read from file.
1575 AT_SETUP([variable name may not begin with `#'])
1576 AT_KEYWORDS([sack synthetic system file negative])
1577 AT_DATA([sys-file.sack], [dnl
1579 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1580 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1582 dnl Numeric variable.
1583 2; 0; 0; 0; 0x050800 *2; s8 >>"$UM1"<<;
1585 dnl End of dictionary.
1589 "be decb7ac6defa1ab3cc7a386d1843c1ae" \
1590 "le 5279b6275633bac55d167faebccfdb14"
1593 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1595 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1597 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1598 [error: `sys-file.sav' near offset 0xb4: Invalid variable name `$UM1'.
1603 AT_SETUP([variable name may not be reserved word])
1604 AT_KEYWORDS([sack synthetic system file negative])
1605 AT_DATA([sys-file.sack], [dnl
1607 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1608 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1610 dnl Numeric variable.
1611 2; 0; 0; 0; 0x050800 *2; s8 >>"TO"<<;
1613 dnl End of dictionary.
1617 "be 57e6ad709668bbf538e2efee4af49916" \
1618 "le 523f14b611efa380bbadf7a16ea43fed"
1621 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1623 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1625 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1626 [error: `sys-file.sav' near offset 0xb4: Invalid variable name `TO'.
1631 AT_SETUP([variable width must be between 0 and 255])
1632 AT_KEYWORDS([sack synthetic system file negative])
1633 AT_DATA([sys-file.sack], [dnl
1635 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1636 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1638 dnl String variable with invalid width 256.
1639 2; 256; 0; 0; 0x050800 *2; s8 "VAR1";
1641 dnl End of dictionary.
1645 "be 170bb18589ba264a0ed2d57b41fe77e1" \
1646 "le 9528b4b5936ef5630bbd3bdd60a123c3"
1649 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1651 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1653 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1654 [error: `sys-file.sav' near offset 0xb4: Bad width 256 for variable VAR1.
1659 AT_SETUP([duplicate variable name])
1660 AT_KEYWORDS([sack synthetic system file negative])
1661 AT_DATA([sys-file.sack], [dnl
1663 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1664 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1666 dnl Numeric variables.
1667 2; 0; 0; 0; 0x050800 *2; s8 "VAR1";
1668 2; 0; 0; 0; 0x050800 *2; s8 "VAR1";
1670 dnl End of dictionary.
1674 "be d8f5fd768ab1d641f9330a4840c71343" \
1675 "le f01e123d384cdaa7c2f7fc4791325ebf"
1678 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1680 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1682 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1683 [error: `sys-file.sav' near offset 0xd4: Duplicate variable name `VAR1'.
1688 AT_SETUP([variable label indicator not 0 or 1])
1689 AT_KEYWORDS([sack synthetic system file negative])
1690 AT_DATA([sys-file.sack], [dnl
1692 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1693 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1695 dnl Numeric variable.
1696 2; 0; >>2<<; 0; 0x050800 *2; s8 "VAR1";
1698 dnl End of dictionary.
1702 "be 3c5ff8d8f146457a385ca92d3d23ca8a" \
1703 "le 37e9f956d321ae57b0bf7fe2384e892b"
1706 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1708 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1710 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1711 [error: `sys-file.sav' near offset 0xb4: Variable label indicator field is not 0 or 1.
1716 AT_SETUP([invalid numeric missing value indicator])
1717 AT_KEYWORDS([sack synthetic system file negative])
1718 AT_DATA([sys-file.sack], [dnl
1720 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1721 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1723 dnl Numeric variable.
1724 2; 0; 0; >>-1<<; 0x050800 *2; s8 "VAR1";
1726 dnl End of dictionary.
1730 "be d1d0d4aedf9f053452c4b1e658ade5e2" \
1731 "le df697575499fe12921185a3d23a5d61d"
1734 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1736 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1738 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1739 ["error: `sys-file.sav' near offset 0xb4: Numeric missing value indicator field is not -3, -2, 0, 1, 2, or 3."
1744 AT_SETUP([invalid string missing value indicator])
1745 AT_KEYWORDS([sack synthetic system file negative])
1746 AT_DATA([sys-file.sack], [dnl
1748 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1749 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1751 dnl String variable.
1752 2; 8; 0; >>4<<; 0x010800 *2; s8 "VAR1";
1754 dnl End of dictionary.
1758 "be f833033be7b102fae19159989f62faa6" \
1759 "le 9704ba828bb7a36ef0262838f6b7936b"
1762 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1764 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1766 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1767 ["error: `sys-file.sav' near offset 0xb4: String missing value indicator field is not 0, 1, 2, or 3."
1772 AT_SETUP([missing string continuation record])
1773 AT_KEYWORDS([sack synthetic system file negative])
1774 AT_DATA([sys-file.sack], [dnl
1776 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1777 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1779 dnl String variable.
1780 2; 10; 0; 0; 0x010a00 *2; s8 "VAR1";
1781 >>2; 0; 0; 0; 0x050800 *2; s8 "VAR2";<<
1783 dnl End of dictionary.
1787 "be c8f9ad2b2acd2918055e2b78c1e0b4b8" \
1788 "le 1afab4d6aee90a6fe8d2dbf229e06409"
1791 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1793 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1795 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1796 [error: `sys-file.sav' near offset 0xb4: Missing string continuation record.
1801 AT_SETUP([invalid variable format])
1802 AT_KEYWORDS([sack synthetic system file negative])
1803 AT_DATA([sys-file.sack], [dnl
1805 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1806 2; 4; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1808 dnl Numeric variable, invalid format types.
1809 dnl No warning is issued for type 0 because it has been observed in real
1811 2; 0; 0; 0; >>0xff0800; 0<<; s8 "NUM1";
1813 dnl Numeric variable, string formats.
1814 2; 0; 0; 0; >>0x010800<<; >>0x021000<<; s8 "VAR1";
1816 dnl String variable, numeric formats.
1817 2; 4; 0; 0; >>0x050800<<; >>0x110a01<<; s8 "STR1";
1819 dnl String variable, wrong width formats.
1820 2; 4; 0; 0; >>0x010800<<; >>0x020400<<; s8 "STR2";
1822 dnl End of dictionary.
1826 "be c6ef5d8fded46443aba89adfafe15cad" \
1827 "le fccaf1764c973892f2d5adbcc2c36fb7"
1830 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1832 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1834 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
1835 warning: `sys-file.sav' near offset 0xc0: Variable NUM1 with width 0 has invalid print format 0xff0800.
1837 warning: `sys-file.sav' near offset 0xe0: Variable VAR1 with width 0 has invalid print format 0x10800.
1839 warning: `sys-file.sav' near offset 0xe4: Variable VAR1 with width 0 has invalid write format 0x21000.
1841 warning: `sys-file.sav' near offset 0x100: Variable STR1 with width 4 has invalid print format 0x50800.
1843 warning: `sys-file.sav' near offset 0x104: Variable STR1 with width 4 has invalid write format 0x110a01.
1845 warning: `sys-file.sav' near offset 0x120: Variable STR2 with width 4 has invalid print format 0x10800.
1847 warning: `sys-file.sav' near offset 0x124: Variable STR2 with width 4 has invalid write format 0x20400.
1852 AT_SETUP([invalid long string missing values])
1853 AT_KEYWORDS([sack synthetic system file negative])
1854 AT_DATA([sys-file.sack], [dnl
1856 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1858 7; dnl Nominal case size
1859 0; dnl Not compressed
1863 "01 Jan 11"; "20:53:52";
1864 "PSPP synthetic test file: "; i8 244; i8 245; i8 246; i8 248; s34 "";
1867 dnl One numeric variable.
1868 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1870 dnl Long string variables that will have missing values added with a
1872 2; 9; 0; 0; 0x010900 *2; s8 "STR1";
1873 2; -1; 0; 0; 0; 0; s8 "";
1874 2; 10; 0; 0; 0x010a00 *2; s8 "STR2";
1875 2; -1; 0; 0; 0; 0; s8 "";
1876 2; 11; 0; 0; 0x010b00 *2; s8 "STR3";
1877 2; -1; 0; 0; 0; 0; s8 "";
1879 dnl Machine integer info record.
1880 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
1882 dnl Machine floating-point info record.
1883 7; 4; 8; 3; SYSMIS; HIGHEST; LOWEST;
1885 dnl Long string variable missing values record.
1887 dnl Zero missing values (not allowed) for STR1 .
1888 COUNT("STR1"); i8 >>0<<;
1890 dnl Four missing values (not allowed) for STR2.
1891 COUNT("STR2"); i8 4;
1892 8; "abcdefgh"; 8; "ijklmnop"; 8; "qrstuvwx"; 8; "yz012345";
1894 dnl Missing values for unknown variable
1895 COUNT(>>"Nonexistent"<<); i8 1; 8; "abcdefgh";
1897 dnl Missing values for numeric variable
1898 COUNT(>>"NUM1"<<); i8 1; 8; "abcdefgh";
1900 dnl Too long missing value
1901 COUNT("STR3"); i8 1; >>COUNT("abcdefghijkl")<<;
1904 dnl Character encoding record.
1905 7; 20; 1; 12; "windows-1252";
1907 dnl Dictionary termination record.
1909 s8 "abcd"; s8 "efgh"; s8 "ijkl"; s8 "mnop"; s8 "qrst"; s8 "uvwx";
1910 s16 "yzABCDEFGHI"; s16 "JKLMNOPQR"; s16 "STUVWXYZ01";
1911 s16 "23456789abc"; s32 "defghijklmnopqstuvwxyzABC";
1915 "be 26e815cfb41eaedb435ea3c81b96215c" \
1916 "le 72d70456bd4dc88bb0a0fdb039ccdfa3"
1919 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1921 AT_DATA([sys-file.sps], [dnl
1922 GET FILE='sys-file.sav'.
1925 AT_CHECK([pspp -O format=csv sys-file.sps], [0],
1926 ["warning: `sys-file.sav' near offset 0x1f8: Long string missing values record says variable STR1 has 0 missing values, but only 1 to 3 missing values are allowed."
1928 "warning: `sys-file.sav' near offset 0x201: Long string missing values record says variable STR2 has 4 missing values, but only 1 to 3 missing values are allowed."
1930 warning: `sys-file.sav' near offset 0x242: Ignoring long string missing value record for unknown variable Nonexistent.
1932 warning: `sys-file.sav' near offset 0x257: Ignoring long string missing value record for numeric variable NUM1.
1934 "warning: `sys-file.sav' near offset 0x270: Ignoring long string missing value 0 for variable str3, with width 11, that has bad value width 12."
1936 Variable,Description,,Position
1937 num1,Format: F8.0,,1
1939 ,Display Alignment: Right,,
1943 ,Display Alignment: Left,,
1947 ,Display Alignment: Left,,
1948 ,Display Width: 10,,
1949 ,"Missing Values: ""abcdefgh""; ""ijklmnop""; ""qrstuvwx""",,
1952 ,Display Alignment: Left,,
1953 ,Display Width: 11,,
1958 AT_SETUP([weighting variable must be numeric])
1959 AT_KEYWORDS([sack synthetic system file negative])
1960 AT_DATA([sys-file.sack], [dnl
1962 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1963 2; 2; 1; >>2<<; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1965 dnl Numeric variable.
1966 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1968 dnl String variable.
1969 2; 4; 0; 0; 0x010400 *2; s8 "STR1";
1971 dnl End of dictionary.
1975 "be 82d30105e46c4896c24f9dcec26c4749" \
1976 "le 32e235119be70050eb78bf4186a5a046"
1979 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1981 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1983 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1984 [error: `sys-file.sav': Weighting variable must be numeric (not string variable `STR1').
1989 AT_SETUP([bad weighting variable index])
1990 AT_KEYWORDS([sack synthetic system file negative])
1991 AT_DATA([sys-file.sack], [dnl
1993 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1994 2; 2; 1; >>3<<; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1996 dnl Numeric variable.
1997 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1999 dnl String variable.
2000 2; 4; 0; 0; 0x010400 *2; s8 "STR1";
2002 dnl End of dictionary.
2006 "be cd9af924ff20bc75834aa2c696254c97" \
2007 "le cbe0f2f514f5e95f27644d0b4314bc78"
2010 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2012 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2014 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
2015 [error: `sys-file.sav' near offset 0x4c: Variable index 3 not in valid range 1...2.
2020 AT_SETUP([variable index is long string contination])
2021 AT_KEYWORDS([sack synthetic system file negative])
2022 AT_DATA([sys-file.sack], [dnl
2024 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2025 2; 2; 1; >>3<<; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2027 dnl Numeric variable.
2028 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2030 dnl Long string variable.
2031 2; 9; 0; 0; 0x010900 *2; s8 "STR1";
2032 (2; -1; 0; 0; 0; 0; s8 "");
2034 dnl End of dictionary.
2038 "be 0c395354df56ea5ff374aafcc535d633" \
2039 "le d977f684ea9d4648ed40f8c6dddde9f7"
2042 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2044 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2046 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
2047 [error: `sys-file.sav' near offset 0x4c: Variable index 3 refers to long string continuation.
2052 AT_SETUP([multiple documents records])
2053 AT_KEYWORDS([sack synthetic system file negative])
2054 AT_DATA([sys-file.sack], [dnl
2056 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2057 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2059 dnl Numeric variable, no label or missing values.
2060 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2062 dnl Two document records.
2063 (6; 1; s80 "One line of documents") >>* 2<<;
2065 dnl Dictionary termination record.
2072 "be 18aa3348a216ed494efe28285b348fa8" \
2073 "le 19b21522bcef1dcc60af328f923f307e"
2076 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2078 AT_DATA([sys-file.sps], [dnl
2079 GET FILE='sys-file.sav'.
2081 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
2082 error: `sys-file.sav' near offset 0x12c: Duplicate type 6 (document) record.
2088 AT_SETUP([empty document record])
2089 AT_KEYWORDS([sack synthetic system file negative])
2090 AT_DATA([sys-file.sack], [dnl
2092 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2093 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2095 dnl Numeric variable, no label or missing values.
2096 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2098 dnl Empty document record.
2101 dnl Dictionary termination record.
2108 "be d8ef29c1b97f9ed226cbd938c9c49b6e" \
2109 "le f6a560c5b62e2c472429d85294f36e61"
2112 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2114 AT_DATA([sys-file.sps], [dnl
2115 GET FILE='sys-file.sav'.
2117 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
2118 error: `sys-file.sav' near offset 0xd4: Number of document lines (0) must be greater than 0 and less than 26843545.
2123 AT_SETUP([extension record too large])
2124 AT_KEYWORDS([sack synthetic system file negative])
2125 AT_DATA([sys-file.sack], [dnl
2127 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2128 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2130 dnl Numeric variable, no label or missing values.
2131 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2133 dnl Too-large extension record.
2134 7; 3; >>0xfffff000 * 2<<;
2137 "be 5a6679dc41ac349b0b73fc430937c05c" \
2138 "le d4769c7f650cfbf160e0386d0d33be04"
2141 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2143 AT_DATA([sys-file.sps], [dnl
2144 GET FILE='sys-file.sav'.
2146 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
2147 error: `sys-file.sav' near offset 0xd8: Record type 7 subtype 3 too large.
2152 AT_SETUP([unknown extension record])
2153 AT_KEYWORDS([sack synthetic system file negative])
2154 AT_DATA([sys-file.sack], [dnl
2156 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2157 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2159 dnl Numeric variable, no label or missing values.
2160 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2162 dnl Unknown extension record type.
2165 dnl End of dictionary.
2169 "be ac8395e27677408189bcb8655e56cc0e" \
2170 "le e308bfcd51f1e3c28d7379c29271f9d6"
2173 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2175 AT_DATA([sys-file.sps], [dnl
2176 GET FILE='sys-file.sav'.
2178 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2179 "warning: `sys-file.sav' near offset 0xd8: Unrecognized record type 7, subtype 30. Please send a copy of this file, and the syntax which created it to bug-gnu-pspp@gnu.org."
2184 AT_SETUP([bad machine integer info size])
2185 AT_KEYWORDS([sack synthetic system file negative])
2186 AT_DATA([sys-file.sack], [dnl
2188 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2189 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2191 dnl Numeric variable, no label or missing values.
2192 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2194 dnl Machine integer info record.
2195 7; 3; 4; >>9<<; 1; 2; 3; -1; 1; 1; ENDIAN; 1252; >>1234<<;
2197 dnl End of dictionary.
2201 "be 21ec84826886b0a266d1360f8279d769" \
2202 "le 15dcba7b2b89b7d8a21ebcc872f515af"
2205 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
2206 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2208 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2209 "warning: `sys-file.sav' near offset 0xd8: Record type 7, subtype 3 has bad count 9 (expected 8)."
2214 AT_SETUP([bad machine integer info float format])
2215 AT_KEYWORDS([sack synthetic system file negative])
2216 AT_DATA([sys-file.sack], [dnl
2218 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2219 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2221 dnl Numeric variable, no label or missing values.
2222 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2224 dnl Machine integer info record.
2225 7; 3; 4; 8; 1; 2; 3; -1; >>2<<; 1; ENDIAN; 1252;
2227 dnl End of dictionary.
2231 "be d510ed28278649eee997fb6881a4c04f" \
2232 "le fbf1eca561a4e243b7ae844ed1677035"
2235 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
2236 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2238 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
2239 error: `sys-file.sav' near offset 0xd8: Floating-point representation indicated by system file (2) differs from expected (1).
2244 AT_SETUP([bad machine integer info endianness])
2245 AT_KEYWORDS([sack synthetic system file negative])
2246 AT_DATA([sys-file.sack], [dnl
2248 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2249 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2251 dnl Numeric variable, no label or missing values.
2252 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2254 dnl Machine integer info record.
2255 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; >>3<<; 1252;
2257 dnl End of dictionary.
2261 "be 855123d16d5e1560b91d60753dad79ad 1" \
2262 "le d6626b4fa2e46a91f26c2fc609b2f1e0 2"
2265 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2267 AT_DATA([sys-file.sps], [dnl
2268 GET FILE='sys-file.sav'.
2271 AT_CHECK_UNQUOTED([pspp -O format=csv sys-file.sps], [0], [dnl
2272 warning: \`sys-file.sav' near offset 0xd8: Integer format indicated by system file (3) differs from expected ($[3]).
2274 Variable,Description,,Position
2275 num1,Format: F8.0,,1
2277 ,Display Alignment: Right,,
2284 AT_SETUP([bad machine floating-point info size])
2285 AT_KEYWORDS([sack synthetic system file negative])
2286 AT_DATA([sys-file.sack], [dnl
2288 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2289 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2291 dnl Numeric variable, no label or missing values.
2292 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2294 dnl Machine floating-point info record.
2295 7; 4; 8; >>4<<; SYSMIS; HIGHEST; LOWEST; 0.0;
2297 dnl End of dictionary.
2301 "be 29c9a173638fbb8bb1efe1176c4d670f" \
2302 "le 5cb49eb1084e5b9cd573a54705ff86a7"
2305 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
2306 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2308 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2309 "warning: `sys-file.sav' near offset 0xd8: Record type 7, subtype 4 has bad count 4 (expected 3)."
2314 AT_SETUP([wrong special floating point values])
2315 AT_KEYWORDS([sack synthetic system file negative])
2316 AT_DATA([sys-file.sack], [dnl
2318 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2319 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2321 dnl Numeric variable, no label or missing values.
2322 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2324 dnl Machine floating-point info record.
2325 7; 4; 8; 3; >>0.0<<; >>1.0<<; >>2.0<<;
2327 dnl End of dictionary.
2331 "be 1e7452d9bb0a2397bf6084a25437514e" \
2332 "le f59f9a83f723cde1611869ff6d91d325"
2335 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2337 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2339 AT_CHECK([pspp -O format=csv sys-file.sps | sed 's/ [(].*/.../'], [0], [dnl
2340 "warning: `sys-file.sav' near offset 0xd8: File specifies unexpected value 0...
2342 "warning: `sys-file.sav' near offset 0xd8: File specifies unexpected value 1...
2344 "warning: `sys-file.sav' near offset 0xd8: File specifies unexpected value 2...
2349 AT_SETUP([bad mrsets name])
2350 AT_KEYWORDS([sack synthetic system file negative multiple response])
2351 AT_DATA([sys-file.sack], [dnl
2353 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2354 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2356 dnl Numeric variable, no label or missing values.
2357 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2359 dnl Multiple response sets.
2360 7; 7; 1; COUNT("a=C");
2361 7; 19; 1; COUNT("xyz=D");
2366 "be 15a9bf44d0cd6186a60629b77079c5a5" \
2367 "le 161c99aca5e7a3684df096137e72ce5b"
2370 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2372 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2374 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2375 warning: `sys-file.sav' near offset 0xd8: `a' does not begin with `$' at offset 2 in MRSETS record.
2377 warning: `sys-file.sav' near offset 0xeb: `xyz' does not begin with `$' at offset 4 in MRSETS record.
2382 AT_SETUP([missing space after C in mrsets])
2383 AT_KEYWORDS([sack synthetic system file negative multiple response])
2384 AT_DATA([sys-file.sack], [dnl
2386 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2387 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2389 dnl Numeric variable, no label or missing values.
2390 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2392 dnl Multiple response sets.
2393 7; 7; 1; COUNT("$a=Cx");
2398 "be c5e5656ba3d74c3a967850f29ad89970" \
2399 "le 29f110509c3d6893a7d21ae2d66aad9d"
2402 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2404 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2406 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2407 warning: `sys-file.sav' near offset 0xd8: Missing space following `C' at offset 4 in MRSETS record.
2412 AT_SETUP([missing space after E in mrsets])
2413 AT_KEYWORDS([sack synthetic system file negative multiple response])
2414 AT_DATA([sys-file.sack], [dnl
2416 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2417 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2419 dnl Numeric variable, no label or missing values.
2420 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2422 dnl Multiple response sets.
2423 7; 7; 1; COUNT("$a=Ex");
2428 "be a9e1dc63e2524882a5e3d2949a2da9d4" \
2429 "le ac709ca1928f65f47a8c8efdd9454b50"
2432 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2434 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2436 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2437 warning: `sys-file.sav' near offset 0xd8: Missing space following `E' at offset 4 in MRSETS record.
2442 AT_SETUP([unexpected label source in mrsets])
2443 AT_KEYWORDS([sack synthetic system file negative multiple response])
2444 AT_DATA([sys-file.sack], [dnl
2446 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2447 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2449 dnl Numeric variable, no label or missing values.
2450 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2452 dnl Multiple response sets.
2453 7; 7; 1; COUNT("$a=E 2");
2458 "be 8c710e85a0a1609d0d03dec80aaf5f94" \
2459 "le 4682440b82f22d4bd2ac56afb7fa3152"
2462 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2464 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2466 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2467 warning: `sys-file.sav' near offset 0xd8: Unexpected label source value `2' following `E' at offset 7 in MRSETS record.
2469 warning: `sys-file.sav' near offset 0xd8: Expecting digit at offset 7 in MRSETS record.
2474 AT_SETUP([bad type character in mrsets])
2475 AT_KEYWORDS([sack synthetic system file negative multiple response])
2476 AT_DATA([sys-file.sack], [dnl
2478 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2479 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2481 dnl Numeric variable, no label or missing values.
2482 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2484 dnl Multiple response sets.
2485 7; 7; 1; COUNT("$a=");
2490 "be fc5e5200d8f56b9a5a713e4a95313a3b" \
2491 "le 578a61e8a06b20216612f566c2050879"
2494 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2496 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2498 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2499 "warning: `sys-file.sav' near offset 0xd8: Missing `C', `D', or `E' at offset 3 in MRSETS record."
2504 AT_SETUP([bad counted string length in mrsets])
2505 AT_KEYWORDS([sack synthetic system file negative multiple response])
2506 AT_DATA([sys-file.sack], [dnl
2508 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2509 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2511 dnl Numeric variable, no label or missing values.
2512 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2514 dnl Multiple response sets.
2515 7; 7; 1; COUNT("$a=Dx");
2520 "be 23d0e2f65c7c5f93bbedcc0f2b260c69" \
2521 "le c3860c1d80e08842264948056e72c0db"
2524 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2526 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2528 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2529 warning: `sys-file.sav' near offset 0xd8: Expecting digit at offset 4 in MRSETS record.
2534 AT_SETUP([missing space in counted string in mrsets])
2535 AT_KEYWORDS([sack synthetic system file negative multiple response])
2536 AT_DATA([sys-file.sack], [dnl
2538 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2539 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2541 dnl Numeric variable, no label or missing values.
2542 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2544 dnl Multiple response sets.
2545 7; 7; 1; COUNT("$a=D1x");
2550 "be c9ce001723763e0698878b7e43a887e8" \
2551 "le e258a1e4491d5a1d1e7d2272ef631a22"
2554 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2556 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2558 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2559 warning: `sys-file.sav' near offset 0xd8: Expecting space at offset 5 in MRSETS record.
2564 AT_SETUP([counted string too long in mrsets])
2565 AT_KEYWORDS([sack synthetic system file negative multiple response])
2566 AT_DATA([sys-file.sack], [dnl
2568 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2569 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2571 dnl Numeric variable, no label or missing values.
2572 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2574 dnl Multiple response sets.
2575 7; 7; 1; COUNT("$a=D4 abc");
2580 "be 196d1266fa0e8e315769dcbe3130e3df" \
2581 "le 23df1ba7b77a26da8ce1c2cfbcaadce0"
2584 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2586 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2588 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2589 warning: `sys-file.sav' near offset 0xd8: 4-byte string starting at offset 6 exceeds record length 9.
2594 AT_SETUP([missing space after counted string in mrsets])
2595 AT_KEYWORDS([sack synthetic system file negative multiple response])
2596 AT_DATA([sys-file.sack], [dnl
2598 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2599 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2601 dnl Numeric variable, no label or missing values.
2602 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2604 dnl Multiple response sets.
2605 7; 7; 1; COUNT("$a=D3 abcx");
2610 "be 86314bb0bbdfad48c10af8b8d8106d6e" \
2611 "le 2b8d05ff501ca78e51f7110ce88a2364"
2614 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2616 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2618 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2619 warning: `sys-file.sav' near offset 0xd8: Expecting space at offset 9 following 3-byte string.
2624 AT_SETUP([missing newline after variable name in mrsets])
2625 AT_KEYWORDS([sack synthetic system file negative multiple response])
2626 AT_DATA([sys-file.sack], [dnl
2628 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2629 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2631 dnl Numeric variable, no label or missing values.
2632 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2634 dnl Multiple response sets.
2635 7; 7; 1; COUNT("$a=C 0 NUM1");
2640 "be cea939cf3e6a5f88cb45e8fa871c5e13" \
2641 "le 52135afec082f50f37eafacadbb2cd65"
2644 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2646 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2648 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2649 warning: `sys-file.sav' near offset 0xd8: Missing new-line parsing variable names at offset 13 in MRSETS record.
2651 warning: `sys-file.sav' near offset 0xd8: MRSET $a has only 1 variables.
2656 AT_SETUP([duplicate variable name in mrsets])
2657 AT_KEYWORDS([sack synthetic system file negative multiple response])
2658 AT_DATA([sys-file.sack], [dnl
2660 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2661 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2663 dnl Numeric variable, no label or missing values.
2664 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2666 dnl Multiple response sets.
2667 7; 7; 1; COUNT("$a=C 0 NUM1 NUM1"; i8 10);
2672 "be 4b1b5fa2dc22cf0afdd35422290b0a29" \
2673 "le e4304b57976440a036f25f8dd8ac1404"
2676 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2678 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2680 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2681 warning: `sys-file.sav' near offset 0xd8: Duplicate variable name NUM1 at offset 18 in MRSETS record.
2683 warning: `sys-file.sav' near offset 0xd8: MRSET $a has only 1 variables.
2688 AT_SETUP([mixed variable types in mrsets])
2689 AT_KEYWORDS([sack synthetic system file negative multiple response])
2690 AT_DATA([sys-file.sack], [dnl
2692 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2693 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2696 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2697 2; 8; 0; 0; 0x010800 *2; s8 "STR1";
2699 dnl Multiple response sets.
2700 7; 7; 1; COUNT("$a=C 0 NUM1 STR1"; i8 10);
2705 "be 0f130e967e4097823f85b8711eb20727" \
2706 "le 4dc987b4303fd115f1cae9be3963acc9"
2709 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2711 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2713 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2714 warning: `sys-file.sav' near offset 0xf8: MRSET $a contains both string and numeric variables.
2716 warning: `sys-file.sav' near offset 0xf8: MRSET $a has only 1 variables.
2721 AT_SETUP([missing newline after variable name in mrsets])
2722 AT_KEYWORDS([sack synthetic system file negative multiple response])
2723 AT_DATA([sys-file.sack], [dnl
2725 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2726 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2728 dnl Numeric variable, no label or missing values.
2729 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2731 dnl Multiple response sets.
2732 7; 7; 1; COUNT("$a=C 0 NUM1"; i8 10);
2737 "be 3a891e0a467afb3d622629c70f329ada" \
2738 "le 432998ec08370510411af4f5207c015e"
2741 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2743 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2745 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2746 warning: `sys-file.sav' near offset 0xd8: MRSET $a has only 1 variables.
2751 AT_SETUP([only one variable in mrset])
2752 AT_KEYWORDS([sack synthetic system file negative multiple response])
2753 AT_DATA([sys-file.sack], [dnl
2755 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2756 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2758 dnl Numeric variable, no label or missing values.
2759 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2761 dnl Multiple response sets.
2762 7; 7; 1; COUNT("$a=C 0 NUM1"; i8 10);
2767 "be 3a891e0a467afb3d622629c70f329ada" \
2768 "le 432998ec08370510411af4f5207c015e"
2771 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2773 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2775 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2776 warning: `sys-file.sav' near offset 0xd8: MRSET $a has only 1 variables.
2781 AT_SETUP([wrong display parameter size])
2782 AT_KEYWORDS([sack synthetic system file negative])
2783 AT_DATA([sys-file.sack], [dnl
2785 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2786 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2788 dnl Numeric variable, no label or missing values.
2789 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2791 dnl Display parameters record.
2792 7; 11; >>8<<; 2; 1.0; 1.0;
2794 dnl End of dictionary.
2798 "be 7c0f1ae47ae11e37d435c4abaceca226" \
2799 "le c29d05a1f8f15ed2201f31f8b787aaa0"
2802 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2804 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2806 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2807 "warning: `sys-file.sav' near offset 0xd8: Record type 7, subtype 11 has bad size 8 (expected 4)."
2812 AT_SETUP([wrong display parameter count])
2813 AT_KEYWORDS([sack synthetic system file negative])
2814 AT_DATA([sys-file.sack], [dnl
2816 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2817 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2819 dnl Numeric variable, no label or missing values.
2820 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2822 dnl Display parameters record.
2823 7; 11; 4; >>4<<; 1; 1; 2; 2;
2825 dnl End of dictionary.
2829 "be 372b57e73c69b05047b60bf6c596e2a1" \
2830 "le 2a550d8c5ceae4de7ced77df66e49d0f"
2833 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2835 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2837 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2838 warning: `sys-file.sav' near offset 0xd8: Extension 11 has bad count 4 (for 1 variables).
2843 AT_SETUP([wrong display measurement level])
2844 AT_KEYWORDS([sack synthetic system file negative])
2845 AT_DATA([sys-file.sack], [dnl
2847 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2848 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2850 dnl Numeric variable, no label or missing values.
2851 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2853 dnl Display parameters record.
2854 7; 11; 4; 2; >>4<<; 0;
2856 dnl End of dictionary.
2860 "be d43e7616b03743339f37292dec6c2204" \
2861 "le 821533c29a070cefdd8f07f4e1741d2a"
2864 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2866 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2868 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2869 warning: `sys-file.sav' near offset 0xd8: Invalid variable display parameters for variable 0 (NUM1). Default parameters substituted.
2874 AT_SETUP([wrong display alignment])
2875 AT_KEYWORDS([sack synthetic system file negative])
2876 AT_DATA([sys-file.sack], [dnl
2878 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2879 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2881 dnl Numeric variable, no label or missing values.
2882 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2884 dnl Display parameters record.
2885 7; 11; 4; 2; 1; >>-1<<;
2887 dnl End of dictionary.
2891 "be c54bc48b5767e2ec3a9ef31df790cb7c" \
2892 "le a4d8b14af64221abe83adb417d110e10"
2895 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2897 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2899 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2900 warning: `sys-file.sav' near offset 0xd8: Invalid variable display parameters for variable 0 (NUM1). Default parameters substituted.
2905 AT_SETUP([bad variable name in variable/value pair])
2906 AT_KEYWORDS([sack synthetic system file negative])
2907 AT_DATA([sys-file.sack], [dnl
2909 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2910 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2912 dnl Numeric variables.
2913 2; 0; 0; 0; 0x050800 *2; s8 "LONGVARI";
2915 dnl Long variable names.
2916 7; 13; 1; COUNT (>>"xyzzy"<<);
2918 dnl Dictionary termination record.
2922 "be b67b6e3c1900e5a9cc691055008f0447" \
2923 "le 26cc52e601f830f9087a0ea2bd9527df"
2926 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2928 AT_DATA([sys-file.sps], [dnl
2929 GET FILE='sys-file.sav'.
2931 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2932 warning: `sys-file.sav' near offset 0xde: Dictionary record refers to unknown variable xyzzy.
2937 AT_SETUP([duplicate long variable name])
2938 AT_KEYWORDS([sack synthetic system file negative])
2939 AT_DATA([sys-file.sack], [dnl
2941 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2942 2; 4; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2944 dnl Numeric variables.
2945 2; 0; 0; 0; 0x050800 *2; s8 "LONGVARI";
2946 2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_A";
2947 2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_B";
2948 2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_C";
2950 dnl Long variable names.
2952 "LONGVARI=_Invalid"; i8 9;
2953 "LONGVA_A=LongVariableName"; i8 9;
2954 "LONGVA_B=LONGVARIABLENAME"; i8 9;
2957 dnl Dictionary termination record.
2961 "be 9b4b4daa00084d984efb8f889bcb727c" \
2962 "le c1b1470d5cd615106e9ae507c9948d8e"
2965 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2967 AT_DATA([sys-file.sps], [dnl
2968 GET FILE='sys-file.sav'.
2970 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2971 warning: `sys-file.sav' near offset 0x138: Long variable mapping from LONGVARI to invalid variable name `_Invalid'.
2973 warning: `sys-file.sav' near offset 0x138: Duplicate long variable name `LONGVARIABLENAME'.
2978 AT_SETUP([bad very long string length])
2979 AT_KEYWORDS([sack synthetic system file negative])
2980 AT_DATA([sys-file.sack], [dnl
2982 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2983 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2985 dnl Numeric variable.
2986 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2988 dnl Very long string map.
2990 "NUM1=00000"; i8 0; i8 9;
2991 "NUM1=00255"; i8 0; i8 9;
2992 "NUM1=00256"; i8 0; i8 9;
2995 dnl Dictionary termination record.
2999 "be 1309d8d9fb24bcf08952dce9b0f39a94" \
3000 "le 94a39de88f8034001b3e467c4cc04d0f"
3003 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3005 AT_DATA([sys-file.sps], [dnl
3006 GET FILE='sys-file.sav'.
3008 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3009 warning: `sys-file.sav' near offset 0xd8: NUM1 listed as string of invalid length 00000 in very long string record.
3011 "warning: `sys-file.sav' near offset 0xd8: NUM1 listed in very long string record with width 00255, which requires only one segment."
3013 error: `sys-file.sav' near offset 0xd8: Very long string NUM1 overflows dictionary.
3018 AT_SETUP([bad very long string segment width])
3019 AT_KEYWORDS([sack synthetic system file negative])
3020 AT_DATA([sys-file.sack], [dnl
3022 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3023 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3026 2; 255; 0; 0; 0x01ff00 *2; s8 "STR1";
3027 (2; -1; 0; 0; 0; 0; s8 "") * 31;
3028 2; >>9<<; 0; 0; 0x010900 *2; s8 "STR1_A";
3029 >>2; -1; 0; 0; 0; 0; s8 "";<<
3031 dnl Very long string map.
3033 "STR1=00256"; i8 0; i8 9;
3036 dnl Dictionary termination record.
3040 "be 1d09a44a46859e6eda28e053dd4b7a8b" \
3041 "le 63b9ac0b3953f3e0d5ee248ebe257794"
3044 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3046 AT_DATA([sys-file.sps], [dnl
3047 GET FILE='sys-file.sav'.
3049 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3050 error: `sys-file.sav' near offset 0x4f8: Very long string with width 256 has segment 1 of width 9 (expected 4).
3055 AT_SETUP([too many value labels])
3056 dnl Skip the test if multiplying a small number by INT32_MAX would not
3057 dnl cause an overflow in size_t.
3058 AT_SKIP_IF([test $SIZEOF_SIZE_T -gt 4])
3059 AT_KEYWORDS([sack synthetic system file negative])
3060 AT_DATA([sys-file.sack], [dnl
3062 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3063 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3065 dnl Numeric variable.
3066 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3070 "be 975b2668dde395ddf619977958b37412" \
3071 "le 0c14aa278cfc2a4b801f91c14321f03b"
3074 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3076 AT_DATA([sys-file.sps], [dnl
3077 GET FILE='sys-file.sav'.
3079 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3080 error: `sys-file.sav' near offset 0xd4: Invalid number of labels 2147483647.
3085 AT_SETUP([missing type 4 record])
3086 AT_KEYWORDS([sack synthetic system file negative])
3087 AT_DATA([sys-file.sack], [dnl
3089 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3090 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3092 dnl Numeric variable.
3093 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3095 dnl Value label with missing type 4 record.
3096 3; 1; 1.0; i8 3; s7 "one";
3098 dnl End of dictionary.
3102 "be 5e1286ac92e3f25ff98492bc5019d608" \
3103 "le b33c12f776bbcaa43aa3bfdd4799e0c0"
3106 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3108 AT_DATA([sys-file.sps], [dnl
3109 GET FILE='sys-file.sav'.
3111 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3112 error: `sys-file.sav' near offset 0xe8: Variable index record (type 4) does not immediately follow value label record (type 3) as it should.
3117 AT_SETUP([value label with no associated variables])
3118 AT_KEYWORDS([sack synthetic system file negative])
3119 AT_DATA([sys-file.sack], [dnl
3121 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3122 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3124 dnl Numeric variable.
3125 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3127 dnl Value label with no variables.
3128 3; 1; 1.0; i8 3; s7 "one"; 4; >>0<<;
3131 "be b0dcec30a936cbcad21c4f3d6fe10fcf" \
3132 "le 3b9fdfce5c8c248048232fd6eac018e3"
3135 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3137 AT_DATA([sys-file.sps], [dnl
3138 GET FILE='sys-file.sav'.
3140 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3141 error: `sys-file.sav' near offset 0xec: Number of variables associated with a value label (0) is not between 1 and the number of variables (1).
3146 AT_SETUP([type 4 record names long string variable])
3147 AT_KEYWORDS([sack synthetic system file negative])
3148 AT_DATA([sys-file.sack], [dnl
3150 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3151 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3153 dnl Long string variable.
3154 2; 9; 0; 0; 0x010900 *2; s8 "STR1";
3155 2; -1; 0; 0; 0; 0; s8 "";
3157 dnl Value label that names long string variable.
3158 3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 1; >>1<<;
3160 dnl End of dictionary.
3164 "be 14053a4f09de4c7c4c55281534dd66f4" \
3165 "le 8a61cc994c659fd66307d2f0fd64ce20"
3168 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
3169 AT_DATA([sys-file.sps], [dnl
3170 GET FILE='sys-file.sav'.
3172 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3173 error: `sys-file.sav' near offset 0xf4: Value labels may not be added to long string variables (e.g. STR1) using records types 3 and 4.
3178 AT_SETUP([variables for value label must all be same type])
3179 AT_KEYWORDS([sack synthetic system file negative])
3180 AT_DATA([sys-file.sack], [dnl
3182 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3183 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3186 2; 6; 0; 0; 0x010600 *2; s8 "STR1";
3187 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3189 dnl Value label that names numeric and string variables.
3190 3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 2; >>1; 2<<;
3192 dnl End of dictionary.
3196 "be 7577c456726a88f52bbef63a8b47bf1a" \
3197 "le 3ba5c6af9ad0ae5cc88f9f63e726e414"
3200 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
3201 AT_DATA([sys-file.sps], [dnl
3202 GET FILE='sys-file.sav'.
3204 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3205 "error: `sys-file.sav' near offset 0xf4: Variables associated with value label are not all of identical type. Variable STR1 is string, but variable NUM1 is numeric."
3210 AT_SETUP([duplicate value labels type])
3211 AT_KEYWORDS([sack synthetic system file negative])
3212 AT_DATA([sys-file.sack], [dnl
3214 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3215 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3218 2; 6; 0; 0; 0x010600 *2; s8 "STR1";
3219 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3221 dnl Duplicate value labels.
3222 3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 2; >>1; 1<<;
3223 3; 1; 1.0; i8 3; s7 "one"; 4; 2; >>2; 2<<;
3225 dnl End of dictionary.
3229 "be ef0f5b2ebddb5a3bfcda16c93a2508f4" \
3230 "le c00e27abd9a6c06bf29a108d7220435a"
3233 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3235 AT_DATA([sys-file.sps], [dnl
3236 GET FILE='sys-file.sav'.
3238 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3239 warning: `sys-file.sav' near offset 0xf4: Duplicate value label for `xyzzy ' on STR1.
3241 warning: `sys-file.sav' near offset 0x11c: Duplicate value label for 1 on NUM1.
3246 AT_SETUP([missing attribute value])
3247 AT_KEYWORDS([sack synthetic system file negative])
3248 AT_DATA([sys-file.sack], [dnl
3250 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3251 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3254 2; 0; 0; 0; 0x050800 *2; s8 "FIRSTVAR";
3256 dnl Data file attributes record.
3261 dnl Variable attributes record.
3267 dnl Dictionary termination record.
3271 "be 0fc71f5e3cdb6b7f2dd73d011d4885c2" \
3272 "le e519b44715400156a2bfe648eb5cff34"
3275 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3277 AT_DATA([sys-file.sps], [dnl
3278 GET FILE='sys-file.sav'.
3280 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3281 warning: `sys-file.sav' near offset 0xde: Error parsing attribute value Attr1[[1]].
3283 warning: `sys-file.sav' near offset 0x101: Error parsing attribute value fred[[2]].
3288 AT_SETUP([unquoted attribute value])
3289 AT_KEYWORDS([sack synthetic system file negative])
3290 AT_DATA([sys-file.sack], [dnl
3292 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3293 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3296 2; 0; 0; 0; 0x050800 *2; s8 "FIRSTVAR";
3298 dnl Data file attributes record.
3300 "Attr1(value"; i8 10;
3304 dnl Variable attributes record.
3307 "fred(23"; i8 10; ")"
3310 dnl Dictionary termination record.
3314 "be 33dba37c2247e63c04bb74a7b472293d" \
3315 "le 041025a9d9d9e21a7fabd90ba7341934"
3318 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3320 AT_DATA([sys-file.sps], [dnl
3321 GET FILE='sys-file.sav'.
3323 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3324 warning: `sys-file.sav' near offset 0xe4: Attribute value Attr1[[1]] is not quoted: value.
3326 warning: `sys-file.sav' near offset 0x106: Attribute value fred[[1]] is not quoted: 23.
3331 AT_SETUP([bad variable name in long string value label])
3332 AT_KEYWORDS([sack synthetic system file negative])
3333 AT_DATA([sys-file.sack], [dnl
3335 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3336 2; 3; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3339 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3340 2; 14; 0; 0; 0x010e00 *2; s8 "STR14";
3341 2; -1; 0; 0; 0; 0; s8 "";
3344 dnl No variable named STR9.
3345 COUNT(>>"STR9"<<); 9;
3346 1; COUNT("RSTUVWXYZ"); COUNT("value label for `RSTUVWXYZ'");
3348 dnl NUM1 is numeric.
3349 COUNT(>>"NUM1"<<); 0;
3350 1; COUNT("xyz"); COUNT("value label for 1.0");
3352 dnl Wrong width for STR14.
3353 COUNT("STR14"); >>9<<;
3354 1; COUNT("RSTUVWXYZ"); COUNT("value label for `RSTUVWXYZ'");
3356 dnl Wrong width for value.
3358 1; COUNT(>>"RSTUVWXYZ"<<); COUNT("value label for `RSTUVWXYZ'");
3360 dnl Duplicate value label.
3361 COUNT("STR14"); 14; 2;
3362 COUNT("abcdefghijklmn"); COUNT("value label for `abcdefghijklmn'");
3363 >>COUNT("abcdefghijklmn"); COUNT("another value label for `abcdefghijklmn'")<<;
3366 dnl Dictionary termination record.
3370 "be cf2e883dadb00e2c6404c09ea0a4e388" \
3371 "le 89c340faf0a7e4a8c834f9687684c091"
3374 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3376 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3378 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3379 warning: `sys-file.sav' near offset 0x128: Ignoring long string value label record for unknown variable STR9.
3381 warning: `sys-file.sav' near offset 0x164: Ignoring long string value label record for numeric variable NUM1.
3383 warning: `sys-file.sav' near offset 0x193: Ignoring long string value label record for variable STR14 because the record's width (9) does not match the variable's width (14).
3385 "warning: `sys-file.sav' near offset 0x1d4: Ignoring long string value label 0 for variable str14, with width 14, that has bad value width 9."
3387 warning: `sys-file.sav' near offset 0x259: Duplicate value label for `abcdefghijklmn' on str14.
3392 AT_SETUP([fewer data records than indicated by file header])
3393 AT_KEYWORDS([sack synthetic system file negative])
3394 AT_DATA([sys-file.sack], [dnl
3396 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3397 2; 2; 0; 0; >>5<<; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3399 dnl Numeric variables.
3400 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3401 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
3409 dnl Missing record here.
3412 "be 6ee097c3934055d0c4564641636f4b5a" \
3413 "le ae03fe1b888091d6938b5a436d44ac60"
3416 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3418 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3421 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
3422 [error: Error reading case from file `sys-file.sav'.
3434 AT_SETUP([partial data record between variables])
3435 AT_KEYWORDS([sack synthetic system file negative])
3436 AT_DATA([sys-file.sack], [dnl
3438 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3439 2; 2; 0; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3441 dnl Numeric variables.
3442 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3443 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
3451 "be 4bcc085d7d8f0f09c6a4ba8064ffe61c" \
3452 "le 7387fc5edd2740aff92c30ca688d6d9b"
3455 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3457 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3460 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
3461 [error: `sys-file.sav' near offset 0x110: File ends in partial case.
3470 AT_SETUP([partial data record within long string])
3471 AT_KEYWORDS([sack synthetic system file negative])
3472 AT_DATA([sys-file.sack], [dnl
3474 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3475 2; 2; 0; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3477 dnl Numeric variables.
3478 2; 14; 0; 0; 0x010e00 *2; s8 "STR14";
3479 2; -1; 0; 0; 0; 0; s8 "";
3483 s14 "one data item";
3487 "be 4a9e84f9e679afb7bb71acd0bb7eab89" \
3488 "le 30752606f14ee2deec2854e8e6de4b3b"
3491 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3493 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3496 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
3497 [error: `sys-file.sav' near offset 0x10e: Unexpected end of file.
3506 AT_SETUP([partial compressed data record])
3507 AT_KEYWORDS([sack synthetic system file positive])
3508 AT_DATA([sys-file.sack], [dnl
3510 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3512 6; dnl Nominal case size
3515 -1; dnl Unspecified number of cases.
3517 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
3520 dnl Numeric variables.
3521 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3522 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
3524 dnl String variable.
3525 2; 4; 0; 0; 0x010400 *2; s8 "STR4";
3526 2; 8; 0; 0; 0x010800 *2; s8 "STR8";
3527 2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
3528 2; -1; 0; 0; 0; 0; s8 "";
3530 dnl Dictionary termination record.
3533 dnl Compressed data.
3534 i8 1 100 254 253 254 253; i8 255 251; "abcdefgh"; s8 "0123";
3537 "be ef01b16e2e397d979a3a7d20725ebe6d" \
3538 "le 51f7a61e9bc68992469d16c55d6ecd88"
3541 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3543 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3546 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
3547 [error: `sys-file.sav' near offset 0x190: File ends in partial case.
3550 num1,num2,str4,str8,str15
3551 -99,0,,abcdefgh,0123 @&t@