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 Simple compression
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 Simple compression.
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 Simple compression.
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 m4_divert_push([PREPARE_TESTS])
1490 zcompressed_sack () {
1493 "$FL3"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1495 6; dnl Nominal case size
1496 2; dnl zlib compressed
1498 -1; dnl Unspecified number of cases.
1500 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
1503 dnl Numeric variables.
1504 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1505 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
1507 dnl String variable.
1508 2; 4; 0; 0; 0x010400 *2; s8 "STR4";
1509 2; 8; 0; 0; 0x010800 *2; s8 "STR8";
1510 2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
1511 2; -1; 0; 0; 0; 0; s8 "";
1513 dnl Dictionary termination record.
1516 dnl ZLIB data header.
1517 i64 0x178; # zheader_ofs
1518 i64 0x1e9; # ztrailer_ofs
1519 i64 48; # ztrailer_len
1521 dnl ZLIB data block.
1523 dnl This is the compressed form of:
1525 dnl 01 64 fe fd fe fd ff fb 61 62 63 64 65 66 67 68 |.d......abcdefgh|
1526 dnl 30 31 32 33 20 20 20 20 fd fd fd fe 65 66 fd fd |0123 ....ef..|
1527 dnl 6a 6b 6c 6d 20 20 20 20 6e 6f 70 71 72 73 74 75 |jklm nopqrstu|
1528 dnl 76 77 78 79 7a 41 42 43 44 45 46 47 20 20 20 20 |vwxyzABCDEFG |
1529 dnl 48 49 4a 4b 4c 4d 4e 4f fe fd fc 00 00 00 00 00 |HIJKLMNO........|
1530 dnl 50 51 52 53 54 55 56 57 |PQRSTUVW|
1532 dnl which is the data from the "compressed data" test.
1533 hex "78 01 63 4c f9 f7 f7 df df ff bf 13 93 92 53 52";
1534 hex "d3 d2 33 0c 0c 8d 8c 15 80 e0 ef df bf ff 52 d3";
1535 hex "fe fe cd ca ce c9 05 f1 f3 f2 0b 0a 8b 8a 4b 4a";
1536 hex "cb ca 2b 2a ab 1c 9d 9c 5d 5c dd dc 41 e2 1e 9e";
1537 hex "5e de 3e be 7e fe ff fe fe 61 00 81 80 c0 a0 e0";
1538 hex "90 d0 b0 70 00 0f 3f 23 d7";
1540 dnl ZLIB data trailer fixed header:
1541 i64 -100; # ztrailer_bias
1542 i64 0; # ztrailer_zero
1543 0x3ff000; # block_size
1546 dnl ZLIB block descriptor:
1547 i64 0x178; # uncompressed_ofs
1548 i64 0x190; # compressed_ofs
1549 88; # uncompressed_size
1550 89; # compressed_size
1553 m4_divert_pop([PREPARE_TESTS])
1555 AT_SETUP([zcompressed data])
1556 AT_KEYWORDS([sack synthetic system file positive zlib])
1557 zcompressed_sack > sys-file.sack
1559 "be 2d706c3ca0cc9be7f1721f09d0d42179" \
1560 "le 3f362f338d65b0a836b3c752cc3fc5bc"
1563 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1565 AT_DATA([sys-file.sps], [dnl
1566 GET FILE='sys-file.sav'.
1570 AT_CHECK([pspp -o pspp.csv sys-file.sps])
1571 AT_CHECK([grep -v Measure pspp.csv | grep -v Display], [0], [dnl
1572 Variable,Description,,Position
1573 num1,Format: F8.0,,1
1574 num2,Format: F8.0,,2
1577 str15,Format: A15,,5
1580 num1,num2,str4,str8,str15
1581 -99,0,,abcdefgh,0123 @&t@
1582 .,151,jklm,nopqrstu,vwxyzABC @&t@
1583 1,2,DEFG,HIJKLMNO,PQRSTUV
1588 AT_BANNER([system file reader - negative])
1590 AT_SETUP([misplaced type 4 record])
1591 AT_KEYWORDS([sack synthetic system file negative])
1592 AT_DATA([sys-file.sack], [dnl
1594 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1595 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1597 dnl Numeric variable.
1598 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1604 "be 6e0bb549fff1fd1af333d51b8a6e0f43" \
1605 "le 7b62734edcee2a1689c463f2866d11b8"
1608 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1610 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1612 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1613 [error: `sys-file.sav' near offset 0xd4: Misplaced type 4 record.
1618 AT_SETUP([bad record type])
1619 AT_KEYWORDS([sack synthetic system file negative])
1620 AT_DATA([sys-file.sack], [dnl
1622 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1623 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1625 dnl Numeric variable.
1626 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1628 dnl Type 8 record (not a valid type).
1632 "be dc8f078c23046ee7db74ec1003178a11" \
1633 "le dc7f111642f0629f4370630fd092eee3"
1636 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1638 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1640 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1641 [error: `sys-file.sav' near offset 0xd4: Unrecognized record type 8.
1646 AT_SETUP([wrong number of variable positions])
1647 AT_KEYWORDS([sack synthetic system file negative])
1648 AT_DATA([sys-file.sack], [dnl
1650 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1651 2; >>2<<; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1653 dnl Numeric variable.
1654 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1656 dnl End of dictionary.
1660 "be c57e91aa426f61813c3ad91ea3a56dda" \
1661 "le 5d1a6c114b135b219473c8ad5bb44bda"
1664 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1666 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1668 AT_CHECK([pspp -O format=csv sys-file.sps], [0],
1669 [warning: `sys-file.sav': File header claims 2 variable positions but 1 were read from file.
1674 AT_SETUP([variable name may not begin with `#'])
1675 AT_KEYWORDS([sack synthetic system file negative])
1676 AT_DATA([sys-file.sack], [dnl
1678 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1679 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1681 dnl Numeric variable.
1682 2; 0; 0; 0; 0x050800 *2; s8 >>"$UM1"<<;
1684 dnl End of dictionary.
1688 "be decb7ac6defa1ab3cc7a386d1843c1ae" \
1689 "le 5279b6275633bac55d167faebccfdb14"
1692 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1694 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1696 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1697 [error: `sys-file.sav' near offset 0xb4: Invalid variable name `$UM1'.
1702 AT_SETUP([variable name may not be reserved word])
1703 AT_KEYWORDS([sack synthetic system file negative])
1704 AT_DATA([sys-file.sack], [dnl
1706 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1707 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1709 dnl Numeric variable.
1710 2; 0; 0; 0; 0x050800 *2; s8 >>"TO"<<;
1712 dnl End of dictionary.
1716 "be 57e6ad709668bbf538e2efee4af49916" \
1717 "le 523f14b611efa380bbadf7a16ea43fed"
1720 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1722 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1724 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1725 [error: `sys-file.sav' near offset 0xb4: Invalid variable name `TO'.
1730 AT_SETUP([variable width must be between 0 and 255])
1731 AT_KEYWORDS([sack synthetic system file negative])
1732 AT_DATA([sys-file.sack], [dnl
1734 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1735 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1737 dnl String variable with invalid width 256.
1738 2; 256; 0; 0; 0x050800 *2; s8 "VAR1";
1740 dnl End of dictionary.
1744 "be 170bb18589ba264a0ed2d57b41fe77e1" \
1745 "le 9528b4b5936ef5630bbd3bdd60a123c3"
1748 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1750 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1752 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1753 [error: `sys-file.sav' near offset 0xb4: Bad width 256 for variable VAR1.
1758 AT_SETUP([duplicate variable name])
1759 AT_KEYWORDS([sack synthetic system file negative])
1760 AT_DATA([sys-file.sack], [dnl
1762 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1763 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1765 dnl Numeric variables.
1766 2; 0; 0; 0; 0x050800 *2; s8 "VAR1";
1767 2; 0; 0; 0; 0x050800 *2; s8 "VAR1";
1769 dnl End of dictionary.
1773 "be d8f5fd768ab1d641f9330a4840c71343" \
1774 "le f01e123d384cdaa7c2f7fc4791325ebf"
1777 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1779 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1781 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1782 [error: `sys-file.sav' near offset 0xd4: Duplicate variable name `VAR1'.
1787 AT_SETUP([variable label indicator not 0 or 1])
1788 AT_KEYWORDS([sack synthetic system file negative])
1789 AT_DATA([sys-file.sack], [dnl
1791 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1792 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1794 dnl Numeric variable.
1795 2; 0; >>2<<; 0; 0x050800 *2; s8 "VAR1";
1797 dnl End of dictionary.
1801 "be 3c5ff8d8f146457a385ca92d3d23ca8a" \
1802 "le 37e9f956d321ae57b0bf7fe2384e892b"
1805 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1807 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1809 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1810 [error: `sys-file.sav' near offset 0xb4: Variable label indicator field is not 0 or 1.
1815 AT_SETUP([invalid numeric missing value indicator])
1816 AT_KEYWORDS([sack synthetic system file negative])
1817 AT_DATA([sys-file.sack], [dnl
1819 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1820 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1822 dnl Numeric variable.
1823 2; 0; 0; >>-1<<; 0x050800 *2; s8 "VAR1";
1825 dnl End of dictionary.
1829 "be d1d0d4aedf9f053452c4b1e658ade5e2" \
1830 "le df697575499fe12921185a3d23a5d61d"
1833 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1835 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1837 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1838 ["error: `sys-file.sav' near offset 0xb4: Numeric missing value indicator field is not -3, -2, 0, 1, 2, or 3."
1843 AT_SETUP([invalid string missing value indicator])
1844 AT_KEYWORDS([sack synthetic system file negative])
1845 AT_DATA([sys-file.sack], [dnl
1847 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1848 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1850 dnl String variable.
1851 2; 8; 0; >>4<<; 0x010800 *2; s8 "VAR1";
1853 dnl End of dictionary.
1857 "be f833033be7b102fae19159989f62faa6" \
1858 "le 9704ba828bb7a36ef0262838f6b7936b"
1861 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1863 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1865 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1866 ["error: `sys-file.sav' near offset 0xb4: String missing value indicator field is not 0, 1, 2, or 3."
1871 AT_SETUP([missing string continuation record])
1872 AT_KEYWORDS([sack synthetic system file negative])
1873 AT_DATA([sys-file.sack], [dnl
1875 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1876 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1878 dnl String variable.
1879 2; 10; 0; 0; 0x010a00 *2; s8 "VAR1";
1880 >>2; 0; 0; 0; 0x050800 *2; s8 "VAR2";<<
1882 dnl End of dictionary.
1886 "be c8f9ad2b2acd2918055e2b78c1e0b4b8" \
1887 "le 1afab4d6aee90a6fe8d2dbf229e06409"
1890 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1892 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1894 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
1895 [error: `sys-file.sav' near offset 0xb4: Missing string continuation record.
1900 AT_SETUP([invalid variable format])
1901 AT_KEYWORDS([sack synthetic system file negative])
1902 AT_DATA([sys-file.sack], [dnl
1904 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1905 2; 4; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
1907 dnl Numeric variable, invalid format types.
1908 dnl No warning is issued for type 0 because it has been observed in real
1910 2; 0; 0; 0; >>0xff0800; 0<<; s8 "NUM1";
1912 dnl Numeric variable, string formats.
1913 2; 0; 0; 0; >>0x010800<<; >>0x021000<<; s8 "VAR1";
1915 dnl String variable, numeric formats.
1916 2; 4; 0; 0; >>0x050800<<; >>0x110a01<<; s8 "STR1";
1918 dnl String variable, wrong width formats.
1919 2; 4; 0; 0; >>0x010800<<; >>0x020400<<; s8 "STR2";
1921 dnl End of dictionary.
1925 "be c6ef5d8fded46443aba89adfafe15cad" \
1926 "le fccaf1764c973892f2d5adbcc2c36fb7"
1929 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
1931 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
1933 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
1934 warning: `sys-file.sav' near offset 0xc0: Variable NUM1 with width 0 has invalid print format 0xff0800.
1936 warning: `sys-file.sav' near offset 0xe0: Variable VAR1 with width 0 has invalid print format 0x10800.
1938 warning: `sys-file.sav' near offset 0xe4: Variable VAR1 with width 0 has invalid write format 0x21000.
1940 warning: `sys-file.sav' near offset 0x100: Variable STR1 with width 4 has invalid print format 0x50800.
1942 warning: `sys-file.sav' near offset 0x104: Variable STR1 with width 4 has invalid write format 0x110a01.
1944 warning: `sys-file.sav' near offset 0x120: Variable STR2 with width 4 has invalid print format 0x10800.
1946 warning: `sys-file.sav' near offset 0x124: Variable STR2 with width 4 has invalid write format 0x20400.
1951 AT_SETUP([invalid long string missing values])
1952 AT_KEYWORDS([sack synthetic system file negative])
1953 AT_DATA([sys-file.sack], [dnl
1955 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
1957 7; dnl Nominal case size
1958 0; dnl Not compressed
1962 "01 Jan 11"; "20:53:52";
1963 "PSPP synthetic test file: "; i8 244; i8 245; i8 246; i8 248; s34 "";
1966 dnl One numeric variable.
1967 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
1969 dnl Long string variables that will have missing values added with a
1971 2; 9; 0; 0; 0x010900 *2; s8 "STR1";
1972 2; -1; 0; 0; 0; 0; s8 "";
1973 2; 10; 0; 0; 0x010a00 *2; s8 "STR2";
1974 2; -1; 0; 0; 0; 0; s8 "";
1975 2; 11; 0; 0; 0x010b00 *2; s8 "STR3";
1976 2; -1; 0; 0; 0; 0; s8 "";
1978 dnl Machine integer info record.
1979 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; ENDIAN; 1252;
1981 dnl Machine floating-point info record.
1982 7; 4; 8; 3; SYSMIS; HIGHEST; LOWEST;
1984 dnl Long string variable missing values record.
1986 dnl Zero missing values (not allowed) for STR1 .
1987 COUNT("STR1"); i8 >>0<<;
1989 dnl Four missing values (not allowed) for STR2.
1990 COUNT("STR2"); i8 4;
1991 8; "abcdefgh"; 8; "ijklmnop"; 8; "qrstuvwx"; 8; "yz012345";
1993 dnl Missing values for unknown variable
1994 COUNT(>>"Nonexistent"<<); i8 1; 8; "abcdefgh";
1996 dnl Missing values for numeric variable
1997 COUNT(>>"NUM1"<<); i8 1; 8; "abcdefgh";
1999 dnl Too long missing value
2000 COUNT("STR3"); i8 1; >>COUNT("abcdefghijkl")<<;
2003 dnl Character encoding record.
2004 7; 20; 1; 12; "windows-1252";
2006 dnl Dictionary termination record.
2008 s8 "abcd"; s8 "efgh"; s8 "ijkl"; s8 "mnop"; s8 "qrst"; s8 "uvwx";
2009 s16 "yzABCDEFGHI"; s16 "JKLMNOPQR"; s16 "STUVWXYZ01";
2010 s16 "23456789abc"; s32 "defghijklmnopqstuvwxyzABC";
2014 "be 26e815cfb41eaedb435ea3c81b96215c" \
2015 "le 72d70456bd4dc88bb0a0fdb039ccdfa3"
2018 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2020 AT_DATA([sys-file.sps], [dnl
2021 GET FILE='sys-file.sav'.
2024 AT_CHECK([pspp -O format=csv sys-file.sps], [0],
2025 ["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."
2027 "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."
2029 warning: `sys-file.sav' near offset 0x242: Ignoring long string missing value record for unknown variable Nonexistent.
2031 warning: `sys-file.sav' near offset 0x257: Ignoring long string missing value record for numeric variable NUM1.
2033 "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."
2035 Variable,Description,,Position
2036 num1,Format: F8.0,,1
2038 ,Display Alignment: Right,,
2042 ,Display Alignment: Left,,
2046 ,Display Alignment: Left,,
2047 ,Display Width: 10,,
2048 ,"Missing Values: ""abcdefgh""; ""ijklmnop""; ""qrstuvwx""",,
2051 ,Display Alignment: Left,,
2052 ,Display Width: 11,,
2057 AT_SETUP([weighting variable must be numeric])
2058 AT_KEYWORDS([sack synthetic system file negative])
2059 AT_DATA([sys-file.sack], [dnl
2061 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2062 2; 2; 1; >>2<<; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2064 dnl Numeric variable.
2065 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2067 dnl String variable.
2068 2; 4; 0; 0; 0x010400 *2; s8 "STR1";
2070 dnl End of dictionary.
2074 "be 82d30105e46c4896c24f9dcec26c4749" \
2075 "le 32e235119be70050eb78bf4186a5a046"
2078 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2080 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2082 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
2083 [error: `sys-file.sav': Weighting variable must be numeric (not string variable `STR1').
2088 AT_SETUP([bad weighting variable index])
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; >>3<<; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2095 dnl Numeric variable.
2096 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2098 dnl String variable.
2099 2; 4; 0; 0; 0x010400 *2; s8 "STR1";
2101 dnl End of dictionary.
2105 "be cd9af924ff20bc75834aa2c696254c97" \
2106 "le cbe0f2f514f5e95f27644d0b4314bc78"
2109 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2111 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2113 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
2114 [error: `sys-file.sav' near offset 0x4c: Variable index 3 not in valid range 1...2.
2119 AT_SETUP([variable index is long string contination])
2120 AT_KEYWORDS([sack synthetic system file negative])
2121 AT_DATA([sys-file.sack], [dnl
2123 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2124 2; 2; 1; >>3<<; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2126 dnl Numeric variable.
2127 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2129 dnl Long string variable.
2130 2; 9; 0; 0; 0x010900 *2; s8 "STR1";
2131 (2; -1; 0; 0; 0; 0; s8 "");
2133 dnl End of dictionary.
2137 "be 0c395354df56ea5ff374aafcc535d633" \
2138 "le d977f684ea9d4648ed40f8c6dddde9f7"
2141 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2143 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2145 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
2146 [error: `sys-file.sav' near offset 0x4c: Variable index 3 refers to long string continuation.
2151 AT_SETUP([multiple documents records])
2152 AT_KEYWORDS([sack synthetic system file negative])
2153 AT_DATA([sys-file.sack], [dnl
2155 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2156 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2158 dnl Numeric variable, no label or missing values.
2159 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2161 dnl Two document records.
2162 (6; 1; s80 "One line of documents") >>* 2<<;
2164 dnl Dictionary termination record.
2171 "be 18aa3348a216ed494efe28285b348fa8" \
2172 "le 19b21522bcef1dcc60af328f923f307e"
2175 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2177 AT_DATA([sys-file.sps], [dnl
2178 GET FILE='sys-file.sav'.
2180 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
2181 error: `sys-file.sav' near offset 0x12c: Duplicate type 6 (document) record.
2187 AT_SETUP([empty document record])
2188 AT_KEYWORDS([sack synthetic system file negative])
2189 AT_DATA([sys-file.sack], [dnl
2191 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2192 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2194 dnl Numeric variable, no label or missing values.
2195 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2197 dnl Empty document record.
2200 dnl Dictionary termination record.
2207 "be d8ef29c1b97f9ed226cbd938c9c49b6e" \
2208 "le f6a560c5b62e2c472429d85294f36e61"
2211 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2213 AT_DATA([sys-file.sps], [dnl
2214 GET FILE='sys-file.sav'.
2216 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
2217 error: `sys-file.sav' near offset 0xd4: Number of document lines (0) must be greater than 0 and less than 26843545.
2222 AT_SETUP([extension record too large])
2223 AT_KEYWORDS([sack synthetic system file negative])
2224 AT_DATA([sys-file.sack], [dnl
2226 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2227 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2229 dnl Numeric variable, no label or missing values.
2230 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2232 dnl Too-large extension record.
2233 7; 3; >>0xfffff000 * 2<<;
2236 "be 5a6679dc41ac349b0b73fc430937c05c" \
2237 "le d4769c7f650cfbf160e0386d0d33be04"
2240 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2242 AT_DATA([sys-file.sps], [dnl
2243 GET FILE='sys-file.sav'.
2245 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
2246 error: `sys-file.sav' near offset 0xd8: Record type 7 subtype 3 too large.
2251 AT_SETUP([unknown extension record])
2252 AT_KEYWORDS([sack synthetic system file negative])
2253 AT_DATA([sys-file.sack], [dnl
2255 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2256 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2258 dnl Numeric variable, no label or missing values.
2259 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2261 dnl Unknown extension record type.
2264 dnl End of dictionary.
2268 "be ac8395e27677408189bcb8655e56cc0e" \
2269 "le e308bfcd51f1e3c28d7379c29271f9d6"
2272 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2274 AT_DATA([sys-file.sps], [dnl
2275 GET FILE='sys-file.sav'.
2277 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2278 "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."
2283 AT_SETUP([bad machine integer info size])
2284 AT_KEYWORDS([sack synthetic system file negative])
2285 AT_DATA([sys-file.sack], [dnl
2287 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2288 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2290 dnl Numeric variable, no label or missing values.
2291 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2293 dnl Machine integer info record.
2294 7; 3; 4; >>9<<; 1; 2; 3; -1; 1; 1; ENDIAN; 1252; >>1234<<;
2296 dnl End of dictionary.
2300 "be 21ec84826886b0a266d1360f8279d769" \
2301 "le 15dcba7b2b89b7d8a21ebcc872f515af"
2304 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
2305 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2307 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2308 "warning: `sys-file.sav' near offset 0xd8: Record type 7, subtype 3 has bad count 9 (expected 8)."
2313 AT_SETUP([bad machine integer info float format])
2314 AT_KEYWORDS([sack synthetic system file negative])
2315 AT_DATA([sys-file.sack], [dnl
2317 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2318 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2320 dnl Numeric variable, no label or missing values.
2321 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2323 dnl Machine integer info record.
2324 7; 3; 4; 8; 1; 2; 3; -1; >>2<<; 1; ENDIAN; 1252;
2326 dnl End of dictionary.
2330 "be d510ed28278649eee997fb6881a4c04f" \
2331 "le fbf1eca561a4e243b7ae844ed1677035"
2334 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
2335 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2337 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
2338 error: `sys-file.sav' near offset 0xd8: Floating-point representation indicated by system file (2) differs from expected (1).
2343 AT_SETUP([bad machine integer info endianness])
2344 AT_KEYWORDS([sack synthetic system file negative])
2345 AT_DATA([sys-file.sack], [dnl
2347 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2348 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2350 dnl Numeric variable, no label or missing values.
2351 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2353 dnl Machine integer info record.
2354 7; 3; 4; 8; 1; 2; 3; -1; 1; 1; >>3<<; 1252;
2356 dnl End of dictionary.
2360 "be 855123d16d5e1560b91d60753dad79ad 1" \
2361 "le d6626b4fa2e46a91f26c2fc609b2f1e0 2"
2364 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2366 AT_DATA([sys-file.sps], [dnl
2367 GET FILE='sys-file.sav'.
2370 AT_CHECK_UNQUOTED([pspp -O format=csv sys-file.sps], [0], [dnl
2371 warning: \`sys-file.sav' near offset 0xd8: Integer format indicated by system file (3) differs from expected ($[3]).
2373 Variable,Description,,Position
2374 num1,Format: F8.0,,1
2376 ,Display Alignment: Right,,
2383 AT_SETUP([bad machine floating-point info size])
2384 AT_KEYWORDS([sack synthetic system file negative])
2385 AT_DATA([sys-file.sack], [dnl
2387 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2388 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2390 dnl Numeric variable, no label or missing values.
2391 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2393 dnl Machine floating-point info record.
2394 7; 4; 8; >>4<<; SYSMIS; HIGHEST; LOWEST; 0.0;
2396 dnl End of dictionary.
2400 "be 29c9a173638fbb8bb1efe1176c4d670f" \
2401 "le 5cb49eb1084e5b9cd573a54705ff86a7"
2404 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
2405 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2407 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2408 "warning: `sys-file.sav' near offset 0xd8: Record type 7, subtype 4 has bad count 4 (expected 3)."
2413 AT_SETUP([wrong special floating point values])
2414 AT_KEYWORDS([sack synthetic system file negative])
2415 AT_DATA([sys-file.sack], [dnl
2417 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2418 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2420 dnl Numeric variable, no label or missing values.
2421 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2423 dnl Machine floating-point info record.
2424 7; 4; 8; 3; >>0.0<<; >>1.0<<; >>2.0<<;
2426 dnl End of dictionary.
2430 "be 1e7452d9bb0a2397bf6084a25437514e" \
2431 "le f59f9a83f723cde1611869ff6d91d325"
2434 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2436 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2438 AT_CHECK([pspp -O format=csv sys-file.sps | sed 's/ [(].*/.../'], [0], [dnl
2439 "warning: `sys-file.sav' near offset 0xd8: File specifies unexpected value 0...
2441 "warning: `sys-file.sav' near offset 0xd8: File specifies unexpected value 1...
2443 "warning: `sys-file.sav' near offset 0xd8: File specifies unexpected value 2...
2448 AT_SETUP([bad mrsets name])
2449 AT_KEYWORDS([sack synthetic system file negative multiple response])
2450 AT_DATA([sys-file.sack], [dnl
2452 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2453 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2455 dnl Numeric variable, no label or missing values.
2456 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2458 dnl Multiple response sets.
2459 7; 7; 1; COUNT("a=C");
2460 7; 19; 1; COUNT("xyz=D");
2465 "be 15a9bf44d0cd6186a60629b77079c5a5" \
2466 "le 161c99aca5e7a3684df096137e72ce5b"
2469 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2471 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2473 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2474 warning: `sys-file.sav' near offset 0xd8: `a' does not begin with `$' at offset 2 in MRSETS record.
2476 warning: `sys-file.sav' near offset 0xeb: `xyz' does not begin with `$' at offset 4 in MRSETS record.
2481 AT_SETUP([missing space after C in mrsets])
2482 AT_KEYWORDS([sack synthetic system file negative multiple response])
2483 AT_DATA([sys-file.sack], [dnl
2485 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2486 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2488 dnl Numeric variable, no label or missing values.
2489 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2491 dnl Multiple response sets.
2492 7; 7; 1; COUNT("$a=Cx");
2497 "be c5e5656ba3d74c3a967850f29ad89970" \
2498 "le 29f110509c3d6893a7d21ae2d66aad9d"
2501 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2503 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2505 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2506 warning: `sys-file.sav' near offset 0xd8: Missing space following `C' at offset 4 in MRSETS record.
2511 AT_SETUP([missing space after E in mrsets])
2512 AT_KEYWORDS([sack synthetic system file negative multiple response])
2513 AT_DATA([sys-file.sack], [dnl
2515 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2516 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2518 dnl Numeric variable, no label or missing values.
2519 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2521 dnl Multiple response sets.
2522 7; 7; 1; COUNT("$a=Ex");
2527 "be a9e1dc63e2524882a5e3d2949a2da9d4" \
2528 "le ac709ca1928f65f47a8c8efdd9454b50"
2531 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2533 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2535 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2536 warning: `sys-file.sav' near offset 0xd8: Missing space following `E' at offset 4 in MRSETS record.
2541 AT_SETUP([unexpected label source in mrsets])
2542 AT_KEYWORDS([sack synthetic system file negative multiple response])
2543 AT_DATA([sys-file.sack], [dnl
2545 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2546 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2548 dnl Numeric variable, no label or missing values.
2549 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2551 dnl Multiple response sets.
2552 7; 7; 1; COUNT("$a=E 2");
2557 "be 8c710e85a0a1609d0d03dec80aaf5f94" \
2558 "le 4682440b82f22d4bd2ac56afb7fa3152"
2561 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2563 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2565 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2566 warning: `sys-file.sav' near offset 0xd8: Unexpected label source value `2' following `E' at offset 7 in MRSETS record.
2568 warning: `sys-file.sav' near offset 0xd8: Expecting digit at offset 7 in MRSETS record.
2573 AT_SETUP([bad type character in mrsets])
2574 AT_KEYWORDS([sack synthetic system file negative multiple response])
2575 AT_DATA([sys-file.sack], [dnl
2577 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2578 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2580 dnl Numeric variable, no label or missing values.
2581 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2583 dnl Multiple response sets.
2584 7; 7; 1; COUNT("$a=");
2589 "be fc5e5200d8f56b9a5a713e4a95313a3b" \
2590 "le 578a61e8a06b20216612f566c2050879"
2593 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2595 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2597 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2598 "warning: `sys-file.sav' near offset 0xd8: Missing `C', `D', or `E' at offset 3 in MRSETS record."
2603 AT_SETUP([bad counted string length in mrsets])
2604 AT_KEYWORDS([sack synthetic system file negative multiple response])
2605 AT_DATA([sys-file.sack], [dnl
2607 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2608 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2610 dnl Numeric variable, no label or missing values.
2611 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2613 dnl Multiple response sets.
2614 7; 7; 1; COUNT("$a=Dx");
2619 "be 23d0e2f65c7c5f93bbedcc0f2b260c69" \
2620 "le c3860c1d80e08842264948056e72c0db"
2623 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2625 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2627 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2628 warning: `sys-file.sav' near offset 0xd8: Expecting digit at offset 4 in MRSETS record.
2633 AT_SETUP([missing space in counted string in mrsets])
2634 AT_KEYWORDS([sack synthetic system file negative multiple response])
2635 AT_DATA([sys-file.sack], [dnl
2637 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2638 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2640 dnl Numeric variable, no label or missing values.
2641 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2643 dnl Multiple response sets.
2644 7; 7; 1; COUNT("$a=D1x");
2649 "be c9ce001723763e0698878b7e43a887e8" \
2650 "le e258a1e4491d5a1d1e7d2272ef631a22"
2653 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2655 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2657 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2658 warning: `sys-file.sav' near offset 0xd8: Expecting space at offset 5 in MRSETS record.
2663 AT_SETUP([counted string too long in mrsets])
2664 AT_KEYWORDS([sack synthetic system file negative multiple response])
2665 AT_DATA([sys-file.sack], [dnl
2667 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2668 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2670 dnl Numeric variable, no label or missing values.
2671 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2673 dnl Multiple response sets.
2674 7; 7; 1; COUNT("$a=D4 abc");
2679 "be 196d1266fa0e8e315769dcbe3130e3df" \
2680 "le 23df1ba7b77a26da8ce1c2cfbcaadce0"
2683 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2685 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2687 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2688 warning: `sys-file.sav' near offset 0xd8: 4-byte string starting at offset 6 exceeds record length 9.
2693 AT_SETUP([missing space after counted string in mrsets])
2694 AT_KEYWORDS([sack synthetic system file negative multiple response])
2695 AT_DATA([sys-file.sack], [dnl
2697 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2698 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2700 dnl Numeric variable, no label or missing values.
2701 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2703 dnl Multiple response sets.
2704 7; 7; 1; COUNT("$a=D3 abcx");
2709 "be 86314bb0bbdfad48c10af8b8d8106d6e" \
2710 "le 2b8d05ff501ca78e51f7110ce88a2364"
2713 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2715 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2717 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2718 warning: `sys-file.sav' near offset 0xd8: Expecting space at offset 9 following 3-byte string.
2723 AT_SETUP([missing newline after variable name in mrsets])
2724 AT_KEYWORDS([sack synthetic system file negative multiple response])
2725 AT_DATA([sys-file.sack], [dnl
2727 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2728 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2730 dnl Numeric variable, no label or missing values.
2731 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2733 dnl Multiple response sets.
2734 7; 7; 1; COUNT("$a=C 0 NUM1");
2739 "be cea939cf3e6a5f88cb45e8fa871c5e13" \
2740 "le 52135afec082f50f37eafacadbb2cd65"
2743 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2745 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2747 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2748 warning: `sys-file.sav' near offset 0xd8: Missing new-line parsing variable names at offset 13 in MRSETS record.
2750 warning: `sys-file.sav' near offset 0xd8: MRSET $a has only 1 variables.
2755 AT_SETUP([duplicate variable name in mrsets])
2756 AT_KEYWORDS([sack synthetic system file negative multiple response])
2757 AT_DATA([sys-file.sack], [dnl
2759 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2760 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2762 dnl Numeric variable, no label or missing values.
2763 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2765 dnl Multiple response sets.
2766 7; 7; 1; COUNT("$a=C 0 NUM1 NUM1"; i8 10);
2771 "be 4b1b5fa2dc22cf0afdd35422290b0a29" \
2772 "le e4304b57976440a036f25f8dd8ac1404"
2775 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2777 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2779 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2780 warning: `sys-file.sav' near offset 0xd8: Duplicate variable name NUM1 at offset 18 in MRSETS record.
2782 warning: `sys-file.sav' near offset 0xd8: MRSET $a has only 1 variables.
2787 AT_SETUP([mixed variable types in mrsets])
2788 AT_KEYWORDS([sack synthetic system file negative multiple response])
2789 AT_DATA([sys-file.sack], [dnl
2791 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2792 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2795 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2796 2; 8; 0; 0; 0x010800 *2; s8 "STR1";
2798 dnl Multiple response sets.
2799 7; 7; 1; COUNT("$a=C 0 NUM1 STR1"; i8 10);
2804 "be 0f130e967e4097823f85b8711eb20727" \
2805 "le 4dc987b4303fd115f1cae9be3963acc9"
2808 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2810 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2812 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2813 warning: `sys-file.sav' near offset 0xf8: MRSET $a contains both string and numeric variables.
2815 warning: `sys-file.sav' near offset 0xf8: MRSET $a has only 1 variables.
2820 AT_SETUP([missing newline after variable name in mrsets])
2821 AT_KEYWORDS([sack synthetic system file negative multiple response])
2822 AT_DATA([sys-file.sack], [dnl
2824 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2825 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2827 dnl Numeric variable, no label or missing values.
2828 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2830 dnl Multiple response sets.
2831 7; 7; 1; COUNT("$a=C 0 NUM1"; i8 10);
2836 "be 3a891e0a467afb3d622629c70f329ada" \
2837 "le 432998ec08370510411af4f5207c015e"
2840 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2842 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2844 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2845 warning: `sys-file.sav' near offset 0xd8: MRSET $a has only 1 variables.
2850 AT_SETUP([only one variable in mrset])
2851 AT_KEYWORDS([sack synthetic system file negative multiple response])
2852 AT_DATA([sys-file.sack], [dnl
2854 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2855 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2857 dnl Numeric variable, no label or missing values.
2858 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2860 dnl Multiple response sets.
2861 7; 7; 1; COUNT("$a=C 0 NUM1"; i8 10);
2866 "be 3a891e0a467afb3d622629c70f329ada" \
2867 "le 432998ec08370510411af4f5207c015e"
2870 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2872 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2874 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2875 warning: `sys-file.sav' near offset 0xd8: MRSET $a has only 1 variables.
2880 AT_SETUP([wrong display parameter size])
2881 AT_KEYWORDS([sack synthetic system file negative])
2882 AT_DATA([sys-file.sack], [dnl
2884 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2885 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2887 dnl Numeric variable, no label or missing values.
2888 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2890 dnl Display parameters record.
2891 7; 11; >>8<<; 2; 1.0; 1.0;
2893 dnl End of dictionary.
2897 "be 7c0f1ae47ae11e37d435c4abaceca226" \
2898 "le c29d05a1f8f15ed2201f31f8b787aaa0"
2901 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2903 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2905 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2906 "warning: `sys-file.sav' near offset 0xd8: Record type 7, subtype 11 has bad size 8 (expected 4)."
2911 AT_SETUP([wrong display parameter count])
2912 AT_KEYWORDS([sack synthetic system file negative])
2913 AT_DATA([sys-file.sack], [dnl
2915 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2916 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2918 dnl Numeric variable, no label or missing values.
2919 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2921 dnl Display parameters record.
2922 7; 11; 4; >>4<<; 1; 1; 2; 2;
2924 dnl End of dictionary.
2928 "be 372b57e73c69b05047b60bf6c596e2a1" \
2929 "le 2a550d8c5ceae4de7ced77df66e49d0f"
2932 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2934 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2936 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2937 warning: `sys-file.sav' near offset 0xd8: Extension 11 has bad count 4 (for 1 variables).
2942 AT_SETUP([wrong display measurement level])
2943 AT_KEYWORDS([sack synthetic system file negative])
2944 AT_DATA([sys-file.sack], [dnl
2946 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2947 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2949 dnl Numeric variable, no label or missing values.
2950 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2952 dnl Display parameters record.
2953 7; 11; 4; 2; >>4<<; 0;
2955 dnl End of dictionary.
2959 "be d43e7616b03743339f37292dec6c2204" \
2960 "le 821533c29a070cefdd8f07f4e1741d2a"
2963 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2965 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2967 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2968 warning: `sys-file.sav' near offset 0xd8: Invalid variable display parameters for variable 0 (NUM1). Default parameters substituted.
2973 AT_SETUP([wrong display alignment])
2974 AT_KEYWORDS([sack synthetic system file negative])
2975 AT_DATA([sys-file.sack], [dnl
2977 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
2978 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
2980 dnl Numeric variable, no label or missing values.
2981 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
2983 dnl Display parameters record.
2984 7; 11; 4; 2; 1; >>-1<<;
2986 dnl End of dictionary.
2990 "be c54bc48b5767e2ec3a9ef31df790cb7c" \
2991 "le a4d8b14af64221abe83adb417d110e10"
2994 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
2996 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
2998 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
2999 warning: `sys-file.sav' near offset 0xd8: Invalid variable display parameters for variable 0 (NUM1). Default parameters substituted.
3004 AT_SETUP([bad variable name in variable/value pair])
3005 AT_KEYWORDS([sack synthetic system file negative])
3006 AT_DATA([sys-file.sack], [dnl
3008 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3009 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3011 dnl Numeric variables.
3012 2; 0; 0; 0; 0x050800 *2; s8 "LONGVARI";
3014 dnl Long variable names.
3015 7; 13; 1; COUNT (>>"xyzzy"<<);
3017 dnl Dictionary termination record.
3021 "be b67b6e3c1900e5a9cc691055008f0447" \
3022 "le 26cc52e601f830f9087a0ea2bd9527df"
3025 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3027 AT_DATA([sys-file.sps], [dnl
3028 GET FILE='sys-file.sav'.
3030 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3031 warning: `sys-file.sav' near offset 0xde: Dictionary record refers to unknown variable xyzzy.
3036 AT_SETUP([duplicate long variable name])
3037 AT_KEYWORDS([sack synthetic system file negative])
3038 AT_DATA([sys-file.sack], [dnl
3040 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3041 2; 4; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3043 dnl Numeric variables.
3044 2; 0; 0; 0; 0x050800 *2; s8 "LONGVARI";
3045 2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_A";
3046 2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_B";
3047 2; 0; 0; 0; 0x050800 *2; s8 "LONGVA_C";
3049 dnl Long variable names.
3051 "LONGVARI=_Invalid"; i8 9;
3052 "LONGVA_A=LongVariableName"; i8 9;
3053 "LONGVA_B=LONGVARIABLENAME"; i8 9;
3056 dnl Dictionary termination record.
3060 "be 9b4b4daa00084d984efb8f889bcb727c" \
3061 "le c1b1470d5cd615106e9ae507c9948d8e"
3064 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3066 AT_DATA([sys-file.sps], [dnl
3067 GET FILE='sys-file.sav'.
3069 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3070 warning: `sys-file.sav' near offset 0x138: Long variable mapping from LONGVARI to invalid variable name `_Invalid'.
3072 warning: `sys-file.sav' near offset 0x138: Duplicate long variable name `LONGVARIABLENAME'.
3077 AT_SETUP([bad very long string length])
3078 AT_KEYWORDS([sack synthetic system file negative])
3079 AT_DATA([sys-file.sack], [dnl
3081 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3082 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3084 dnl Numeric variable.
3085 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3087 dnl Very long string map.
3089 "NUM1=00000"; i8 0; i8 9;
3090 "NUM1=00255"; i8 0; i8 9;
3091 "NUM1=00256"; i8 0; i8 9;
3094 dnl Dictionary termination record.
3098 "be 1309d8d9fb24bcf08952dce9b0f39a94" \
3099 "le 94a39de88f8034001b3e467c4cc04d0f"
3102 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3104 AT_DATA([sys-file.sps], [dnl
3105 GET FILE='sys-file.sav'.
3107 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3108 warning: `sys-file.sav' near offset 0xd8: NUM1 listed as string of invalid length 00000 in very long string record.
3110 "warning: `sys-file.sav' near offset 0xd8: NUM1 listed in very long string record with width 00255, which requires only one segment."
3112 error: `sys-file.sav' near offset 0xd8: Very long string NUM1 overflows dictionary.
3117 AT_SETUP([bad very long string segment width])
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;
3125 2; 255; 0; 0; 0x01ff00 *2; s8 "STR1";
3126 (2; -1; 0; 0; 0; 0; s8 "") * 31;
3127 2; >>9<<; 0; 0; 0x010900 *2; s8 "STR1_A";
3128 >>2; -1; 0; 0; 0; 0; s8 "";<<
3130 dnl Very long string map.
3132 "STR1=00256"; i8 0; i8 9;
3135 dnl Dictionary termination record.
3139 "be 1d09a44a46859e6eda28e053dd4b7a8b" \
3140 "le 63b9ac0b3953f3e0d5ee248ebe257794"
3143 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3145 AT_DATA([sys-file.sps], [dnl
3146 GET FILE='sys-file.sav'.
3148 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3149 error: `sys-file.sav' near offset 0x4f8: Very long string with width 256 has segment 1 of width 9 (expected 4).
3154 AT_SETUP([too many value labels])
3155 dnl Skip the test if multiplying a small number by INT32_MAX would not
3156 dnl cause an overflow in size_t.
3157 AT_SKIP_IF([test $SIZEOF_SIZE_T -gt 4])
3158 AT_KEYWORDS([sack synthetic system file negative])
3159 AT_DATA([sys-file.sack], [dnl
3161 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3162 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3164 dnl Numeric variable.
3165 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3169 "be 975b2668dde395ddf619977958b37412" \
3170 "le 0c14aa278cfc2a4b801f91c14321f03b"
3173 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3175 AT_DATA([sys-file.sps], [dnl
3176 GET FILE='sys-file.sav'.
3178 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3179 error: `sys-file.sav' near offset 0xd4: Invalid number of labels 2147483647.
3184 AT_SETUP([missing type 4 record])
3185 AT_KEYWORDS([sack synthetic system file negative])
3186 AT_DATA([sys-file.sack], [dnl
3188 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3189 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3191 dnl Numeric variable.
3192 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3194 dnl Value label with missing type 4 record.
3195 3; 1; 1.0; i8 3; s7 "one";
3197 dnl End of dictionary.
3201 "be 5e1286ac92e3f25ff98492bc5019d608" \
3202 "le b33c12f776bbcaa43aa3bfdd4799e0c0"
3205 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3207 AT_DATA([sys-file.sps], [dnl
3208 GET FILE='sys-file.sav'.
3210 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3211 error: `sys-file.sav' near offset 0xe8: Variable index record (type 4) does not immediately follow value label record (type 3) as it should.
3216 AT_SETUP([value label with no associated variables])
3217 AT_KEYWORDS([sack synthetic system file negative])
3218 AT_DATA([sys-file.sack], [dnl
3220 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3221 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3223 dnl Numeric variable.
3224 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3226 dnl Value label with no variables.
3227 3; 1; 1.0; i8 3; s7 "one"; 4; >>0<<;
3230 "be b0dcec30a936cbcad21c4f3d6fe10fcf" \
3231 "le 3b9fdfce5c8c248048232fd6eac018e3"
3234 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3236 AT_DATA([sys-file.sps], [dnl
3237 GET FILE='sys-file.sav'.
3239 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3240 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).
3245 AT_SETUP([type 4 record names long string variable])
3246 AT_KEYWORDS([sack synthetic system file negative])
3247 AT_DATA([sys-file.sack], [dnl
3249 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3250 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3252 dnl Long string variable.
3253 2; 9; 0; 0; 0x010900 *2; s8 "STR1";
3254 2; -1; 0; 0; 0; 0; s8 "";
3256 dnl Value label that names long string variable.
3257 3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 1; >>1<<;
3259 dnl End of dictionary.
3263 "be 14053a4f09de4c7c4c55281534dd66f4" \
3264 "le 8a61cc994c659fd66307d2f0fd64ce20"
3267 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
3268 AT_DATA([sys-file.sps], [dnl
3269 GET FILE='sys-file.sav'.
3271 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3272 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.
3277 AT_SETUP([variables for value label must all be same type])
3278 AT_KEYWORDS([sack synthetic system file negative])
3279 AT_DATA([sys-file.sack], [dnl
3281 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3282 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3285 2; 6; 0; 0; 0x010600 *2; s8 "STR1";
3286 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3288 dnl Value label that names numeric and string variables.
3289 3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 2; >>1; 2<<;
3291 dnl End of dictionary.
3295 "be 7577c456726a88f52bbef63a8b47bf1a" \
3296 "le 3ba5c6af9ad0ae5cc88f9f63e726e414"
3299 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [ignore])
3300 AT_DATA([sys-file.sps], [dnl
3301 GET FILE='sys-file.sav'.
3303 AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl
3304 "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."
3309 AT_SETUP([duplicate value labels type])
3310 AT_KEYWORDS([sack synthetic system file negative])
3311 AT_DATA([sys-file.sack], [dnl
3313 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3314 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3317 2; 6; 0; 0; 0x010600 *2; s8 "STR1";
3318 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3320 dnl Duplicate value labels.
3321 3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 2; >>1; 1<<;
3322 3; 1; 1.0; i8 3; s7 "one"; 4; 2; >>2; 2<<;
3324 dnl End of dictionary.
3328 "be ef0f5b2ebddb5a3bfcda16c93a2508f4" \
3329 "le c00e27abd9a6c06bf29a108d7220435a"
3332 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3334 AT_DATA([sys-file.sps], [dnl
3335 GET FILE='sys-file.sav'.
3337 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3338 warning: `sys-file.sav' near offset 0xf4: Duplicate value label for `xyzzy ' on STR1.
3340 warning: `sys-file.sav' near offset 0x11c: Duplicate value label for 1 on NUM1.
3345 AT_SETUP([missing attribute value])
3346 AT_KEYWORDS([sack synthetic system file negative])
3347 AT_DATA([sys-file.sack], [dnl
3349 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3350 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3353 2; 0; 0; 0; 0x050800 *2; s8 "FIRSTVAR";
3355 dnl Data file attributes record.
3360 dnl Variable attributes record.
3366 dnl Dictionary termination record.
3370 "be 0fc71f5e3cdb6b7f2dd73d011d4885c2" \
3371 "le e519b44715400156a2bfe648eb5cff34"
3374 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3376 AT_DATA([sys-file.sps], [dnl
3377 GET FILE='sys-file.sav'.
3379 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3380 warning: `sys-file.sav' near offset 0xde: Error parsing attribute value Attr1[[1]].
3382 warning: `sys-file.sav' near offset 0x101: Error parsing attribute value fred[[2]].
3387 AT_SETUP([unquoted attribute value])
3388 AT_KEYWORDS([sack synthetic system file negative])
3389 AT_DATA([sys-file.sack], [dnl
3391 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3392 2; 1; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3395 2; 0; 0; 0; 0x050800 *2; s8 "FIRSTVAR";
3397 dnl Data file attributes record.
3399 "Attr1(value"; i8 10;
3403 dnl Variable attributes record.
3406 "fred(23"; i8 10; ")"
3409 dnl Dictionary termination record.
3413 "be 33dba37c2247e63c04bb74a7b472293d" \
3414 "le 041025a9d9d9e21a7fabd90ba7341934"
3417 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3419 AT_DATA([sys-file.sps], [dnl
3420 GET FILE='sys-file.sav'.
3422 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3423 warning: `sys-file.sav' near offset 0xe4: Attribute value Attr1[[1]] is not quoted: value.
3425 warning: `sys-file.sav' near offset 0x106: Attribute value fred[[1]] is not quoted: 23.
3430 AT_SETUP([bad variable name in long string value label])
3431 AT_KEYWORDS([sack synthetic system file negative])
3432 AT_DATA([sys-file.sack], [dnl
3434 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3435 2; 3; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3438 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3439 2; 14; 0; 0; 0x010e00 *2; s8 "STR14";
3440 2; -1; 0; 0; 0; 0; s8 "";
3443 dnl No variable named STR9.
3444 COUNT(>>"STR9"<<); 9;
3445 1; COUNT("RSTUVWXYZ"); COUNT("value label for `RSTUVWXYZ'");
3447 dnl NUM1 is numeric.
3448 COUNT(>>"NUM1"<<); 0;
3449 1; COUNT("xyz"); COUNT("value label for 1.0");
3451 dnl Wrong width for STR14.
3452 COUNT("STR14"); >>9<<;
3453 1; COUNT("RSTUVWXYZ"); COUNT("value label for `RSTUVWXYZ'");
3455 dnl Wrong width for value.
3457 1; COUNT(>>"RSTUVWXYZ"<<); COUNT("value label for `RSTUVWXYZ'");
3459 dnl Duplicate value label.
3460 COUNT("STR14"); 14; 2;
3461 COUNT("abcdefghijklmn"); COUNT("value label for `abcdefghijklmn'");
3462 >>COUNT("abcdefghijklmn"); COUNT("another value label for `abcdefghijklmn'")<<;
3465 dnl Dictionary termination record.
3469 "be cf2e883dadb00e2c6404c09ea0a4e388" \
3470 "le 89c340faf0a7e4a8c834f9687684c091"
3473 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3475 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3477 AT_CHECK([pspp -O format=csv sys-file.sps], [0], [dnl
3478 warning: `sys-file.sav' near offset 0x128: Ignoring long string value label record for unknown variable STR9.
3480 warning: `sys-file.sav' near offset 0x164: Ignoring long string value label record for numeric variable NUM1.
3482 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).
3484 "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."
3486 warning: `sys-file.sav' near offset 0x259: Duplicate value label for `abcdefghijklmn' on str14.
3491 AT_SETUP([fewer data records than indicated by file header])
3492 AT_KEYWORDS([sack synthetic system file negative])
3493 AT_DATA([sys-file.sack], [dnl
3495 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3496 2; 2; 0; 0; >>5<<; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3498 dnl Numeric variables.
3499 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3500 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
3508 dnl Missing record here.
3511 "be 6ee097c3934055d0c4564641636f4b5a" \
3512 "le ae03fe1b888091d6938b5a436d44ac60"
3515 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3517 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3520 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
3521 [error: Error reading case from file `sys-file.sav'.
3533 AT_SETUP([partial data record between variables])
3534 AT_KEYWORDS([sack synthetic system file negative])
3535 AT_DATA([sys-file.sack], [dnl
3537 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3538 2; 2; 0; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3540 dnl Numeric variables.
3541 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3542 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
3550 "be 4bcc085d7d8f0f09c6a4ba8064ffe61c" \
3551 "le 7387fc5edd2740aff92c30ca688d6d9b"
3554 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3556 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3559 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
3560 [error: `sys-file.sav' near offset 0x110: File ends in partial case.
3569 AT_SETUP([partial data record within long string])
3570 AT_KEYWORDS([sack synthetic system file negative])
3571 AT_DATA([sys-file.sack], [dnl
3573 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3574 2; 2; 0; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3;
3576 dnl Numeric variables.
3577 2; 14; 0; 0; 0x010e00 *2; s8 "STR14";
3578 2; -1; 0; 0; 0; 0; s8 "";
3582 s14 "one data item";
3586 "be 4a9e84f9e679afb7bb71acd0bb7eab89" \
3587 "le 30752606f14ee2deec2854e8e6de4b3b"
3590 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3592 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3595 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
3596 [error: `sys-file.sav' near offset 0x10e: Unexpected end of file.
3605 AT_SETUP([partial compressed data record])
3606 AT_KEYWORDS([sack synthetic system file positive])
3607 AT_DATA([sys-file.sack], [dnl
3609 "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3611 6; dnl Nominal case size
3614 -1; dnl Unspecified number of cases.
3616 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
3619 dnl Numeric variables.
3620 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3621 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
3623 dnl String variable.
3624 2; 4; 0; 0; 0x010400 *2; s8 "STR4";
3625 2; 8; 0; 0; 0x010800 *2; s8 "STR8";
3626 2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
3627 2; -1; 0; 0; 0; 0; s8 "";
3629 dnl Dictionary termination record.
3632 dnl Compressed data.
3633 i8 1 100 254 253 254 253; i8 255 251; "abcdefgh"; s8 "0123";
3636 "be ef01b16e2e397d979a3a7d20725ebe6d" \
3637 "le 51f7a61e9bc68992469d16c55d6ecd88"
3640 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3642 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3645 AT_CHECK([pspp -O format=csv sys-file.sps], [1],
3646 [error: `sys-file.sav' near offset 0x190: File ends in partial case.
3649 num1,num2,str4,str8,str15
3650 -99,0,,abcdefgh,0123 @&t@
3655 AT_SETUP([zcompressed data - bad zheader_ofs])
3656 AT_KEYWORDS([sack synthetic system file negative zlib])
3657 zcompressed_sack | sed 's/.*zheader_ofs.*/>>i64 0<<;/' > sys-file.sack
3659 "be 6d5c32f34fa1bed6f9b8f7045d104fdc" \
3660 "le 1f67fbda4f0021143e141fe8403c5a97"
3663 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3665 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3667 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [error: `sys-file.sav' near offset 0x178: Wrong ZLIB data header offset 0 (expected 0x178).
3672 AT_SETUP([zcompressed data - bad ztrailer_ofs])
3673 AT_KEYWORDS([sack synthetic system file negative zlib])
3674 zcompressed_sack | sed 's/.*ztrailer_ofs.*/>>i64 0<<;/' > sys-file.sack
3676 "be e2c8dec0c62d3d798825ad5906370634" \
3677 "le c1cff4cdddeee80bf1580cbc26fa9fd5"
3680 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3682 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3684 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [error: `sys-file.sav' near offset 0x178: Impossible ZLIB trailer offset 0x0.
3689 # ztrailer_len must be a multiple of 24 and at least 48,
3690 # so a value of 12 is impossible.
3691 AT_SETUP([zcompressed data - invalid ztrailer_len])
3692 AT_KEYWORDS([sack synthetic system file negative zlib])
3693 zcompressed_sack | sed 's/.*ztrailer_len.*/>>i64 12<<;/' > sys-file.sack
3695 "be 27f5203463bc4c7644382f24ae87f84c" \
3696 "le 0035fa6ee7690720429715150ede85f4"
3699 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3701 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3703 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [error: `sys-file.sav' near offset 0x178: Invalid ZLIB trailer length 12.
3708 # ztrailer_ofs + ztrailer_len must be the file size.
3709 AT_SETUP([zcompressed data - wrong ztrailer_len])
3710 AT_KEYWORDS([sack synthetic system file negative zlib])
3711 zcompressed_sack | sed 's/.*ztrailer_len.*/>>i64 72<<;/' > sys-file.sack
3713 "be 2ba9ae97bc0a7f5dcfe36e2463b9d7cb" \
3714 "le d737ea0a53ca5c6f20be359027171d73"
3717 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3719 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3721 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [warning: `sys-file.sav' near offset 0x190: End of ZLIB trailer (0x231) is not file size (0x219).
3722 error: `sys-file.sav' near offset 0x201: 72-byte ZLIB trailer specifies 1 data blocks (expected 2).
3727 AT_SETUP([zcompressed data - wrong ztrailer_bias])
3728 AT_KEYWORDS([sack synthetic system file negative zlib])
3729 zcompressed_sack | sed 's/.*ztrailer_bias.*/>>i64 0<<;/' > sys-file.sack
3731 "be a5b56ab5e799a3626de2cdd7bd8d7a03" \
3732 "le d7cd584c6d5a95df10ba640eb3f1f24f"
3735 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3737 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3739 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [error: `sys-file.sav' near offset 0x1f1: ZLIB trailer bias (0) differs from file header bias (100.00).
3744 AT_SETUP([zcompressed data - wrong ztrailer_zero])
3745 AT_KEYWORDS([sack synthetic system file negative zlib])
3746 zcompressed_sack | sed 's/.*ztrailer_zero.*/>>i64 100<<;/' > sys-file.sack
3748 "be 8d746abedb3e74cfdc22207f3455db92" \
3749 "le 79cea017365cab35d59c7a300cfa66c1"
3752 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3754 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3756 AT_CHECK([pspp -o pspp.csv sys-file.sps], [0], [warning: `sys-file.sav' near offset 0x1f9: ZLIB trailer "zero" field has nonzero value 100.
3761 AT_SETUP([zcompressed data - wrong block_size])
3762 AT_KEYWORDS([sack synthetic system file negative zlib])
3763 zcompressed_sack | sed 's/.*block_size.*/>>0x1000<<;/' > sys-file.sack
3765 "be 8d5a1caa56be8892d453faf1047005ca" \
3766 "le 7daa1bd57b192893b313a351202e179b"
3769 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3771 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3773 AT_CHECK([pspp -o pspp.csv sys-file.sps], [0], [warning: `sys-file.sav' near offset 0x1fd: ZLIB trailer specifies unexpected 4096-byte block size.
3778 AT_SETUP([zcompressed data - wrong n_blocks])
3779 AT_KEYWORDS([sack synthetic system file negative zlib])
3780 zcompressed_sack | sed 's/.*n_blocks.*/>>2<<;/' > sys-file.sack
3782 "be cd29596fd6bf4a2f651febe820a7955f" \
3783 "le 8fc1f718dfd2abac7c3442c1055d4cab"
3786 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3788 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3790 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [error: `sys-file.sav' near offset 0x201: 48-byte ZLIB trailer specifies 2 data blocks (expected 1).
3795 AT_SETUP([zcompressed data - wrong uncompressed_ofs])
3796 AT_KEYWORDS([sack synthetic system file negative zlib])
3797 zcompressed_sack | sed 's/.*uncompressed_ofs.*/i64 >>0x177<<;/' > sys-file.sack
3799 "be 5546120fe6161dc6ed20aec48d8e74a4" \
3800 "le 86fafd625ed5ceaa1bff4fc7f500b6ab"
3803 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3805 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3807 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [error: `sys-file.sav' near offset 0x201: ZLIB block descriptor 0 reported uncompressed data offset 0x177, when 0x178 was expected.
3812 AT_SETUP([zcompressed data - wrong compressed_ofs])
3813 AT_KEYWORDS([sack synthetic system file negative zlib])
3814 zcompressed_sack | sed 's/.*@%:@ compressed_ofs.*/i64 >>0x191<<;/' > sys-file.sack
3816 "be 652e28f8d3f8e4ce47ad18d0f30e7bb9" \
3817 "le ebf2c647f2d7c47858d4f5ed683526e6"
3820 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3822 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3824 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [error: `sys-file.sav' near offset 0x201: ZLIB block descriptor 0 reported compressed data offset 0x191, when 0x190 was expected.
3829 AT_SETUP([zcompressed data - compressed sizes don't add up])
3830 AT_KEYWORDS([sack synthetic system file negative zlib])
3831 AT_DATA([sys-file.sack], [dnl
3833 "$FL3"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file";
3835 6; dnl Nominal case size
3836 2; dnl zlib compressed
3838 -1; dnl Unspecified number of cases.
3840 "01 Jan 11"; "20:53:52"; s64 "PSPP synthetic test file";
3843 dnl Numeric variables.
3844 2; 0; 0; 0; 0x050800 *2; s8 "NUM1";
3845 2; 0; 0; 0; 0x050800 *2; s8 "NUM2";
3847 dnl String variable.
3848 2; 4; 0; 0; 0x010400 *2; s8 "STR4";
3849 2; 8; 0; 0; 0x010800 *2; s8 "STR8";
3850 2; 15; 0; 0; 0x010f00 *2; s8 "STR15";
3851 2; -1; 0; 0; 0; 0; s8 "";
3853 dnl Dictionary termination record.
3856 dnl ZLIB data header.
3857 i64 0x178; # zheader_ofs
3858 i64 0x190; # ztrailer_ofs
3859 i64 72; # ztrailer_len
3861 dnl This is where the ZLIB data blocks would go, but we don't need any to
3862 dnl provoke this message so we omit them.
3864 dnl ZLIB data trailer fixed header:
3865 i64 -100; # ztrailer_bias
3866 i64 0; # ztrailer_zero
3867 0x3ff000; # block_size
3870 dnl ZLIB block descriptor 1:
3871 i64 0x178; # uncompressed_ofs
3872 i64 0x190; # compressed_ofs
3873 0x100000; # uncompressed_size
3874 0x12345; # compressed_size
3876 dnl ZLIB block descriptor 2:
3877 i64 0x100178; # uncompressed_ofs
3878 i64 0x12405; # compressed_ofs
3879 0x100000; # uncompressed_size
3880 0x12345; # compressed_size
3883 "be 72ebf57bffa340afe16ed79959faac09" \
3884 "le 80b34e98f6b181dcc2e8ca4ba13f768d"
3887 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3889 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3891 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [warning: `sys-file.sav' near offset 0x1a8: ZLIB block descriptor 0 reported block size 0x100000, when 0x3ff000 was expected.
3892 error: `sys-file.sav' near offset 0x1c0: ZLIB block descriptor 1 reported compressed data offset 0x12405, when 0x124d5 was expected.
3897 AT_SETUP([zcompressed data - uncompressed_size > block_size])
3898 AT_KEYWORDS([sack synthetic system file negative zlib])
3899 zcompressed_sack | sed 's/.*uncompressed_size.*/>>0x400000<<;/' > sys-file.sack
3901 "be 9bb74ef407fe0b79e43c388eedc28212" \
3902 "le 6f145fb5f820c513f50b6f81310cdad5"
3905 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3907 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3909 AT_CHECK([pspp -o pspp.csv sys-file.sps], [0], [warning: `sys-file.sav' near offset 0x201: ZLIB block descriptor 0 reported block size 0x400000, when at most 0x3ff000 was expected.
3914 AT_SETUP([zcompressed data - compression expands data too much])
3915 AT_KEYWORDS([sack synthetic system file negative zlib])
3916 zcompressed_sack | sed 's/.*uncompressed_size.*/>>50<<;/
3917 s/.*@%:@ compressed_size.*/>>100<<;/' > sys-file.sack
3919 "be e11cadde5f0855c965a1cb388dedc36e" \
3920 "le 37953e71462b6554c5644fec8b539164"
3923 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3925 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3927 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [error: `sys-file.sav' near offset 0x201: ZLIB block descriptor 0 reports compressed size 100 and uncompressed size 50.
3932 AT_SETUP([zcompressed data - compressed sizes don't add up])
3933 AT_KEYWORDS([sack synthetic system file negative zlib])
3934 zcompressed_sack | sed 's/.*@%:@ compressed_size.*/>>88<<;/' > sys-file.sack
3936 "be 366eaf85be1f26fb6549e2f8ee393628" \
3937 "le a756e5125e6a908cb4990f66cc419bef"
3940 AT_CHECK_UNQUOTED([sack --$[1] sys-file.sack > sys-file.sav], [0], [], [$[2]
3942 AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'.
3944 AT_CHECK([pspp -o pspp.csv sys-file.sps], [1], [error: `sys-file.sav' near offset 0x219: ZLIB trailer is at offset 0x1e9 but 0x1e8 would be expected from block descriptors.