X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Fdata%2Fsys-file-reader.at;h=f4466317637a5d2ef5871fce96561e7575d0e987;hb=c1b1583b96cc05a2bf9f3f6d01bbfa063fafb253;hp=0e86db68a83edae0aea4f20e1eb319bc9ab24d5a;hpb=8fcedd27b1645a63f0080c7a3c0195e79b27ddec;p=pspp diff --git a/tests/data/sys-file-reader.at b/tests/data/sys-file-reader.at index 0e86db68a8..f446631763 100644 --- a/tests/data/sys-file-reader.at +++ b/tests/data/sys-file-reader.at @@ -152,16 +152,16 @@ Label,PSPP synthetic test file: ôõöø Table: Variables Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -num2,2,Numeric variable 2's label (ùúû),Scale,Input,8,Right,F8.0,F8.0, -num3,3,,Scale,Input,8,Right,F8.0,F8.0,1 -num4,4,Another numeric variable label,Scale,Input,8,Right,F8.0,F8.0,1 -num5,5,,Scale,Input,8,Right,F8.0,F8.0,1; 2 -num6,6,,Scale,Input,8,Right,F8.0,F8.0,1; 2; 3 -num7,7,,Scale,Input,8,Right,F8.0,F8.0,1 THRU 3 -num8,8,,Scale,Input,8,Right,F8.0,F8.0,1 THRU 3; 5 -num9,9,,Scale,Input,8,Right,F8.0,F8.0,1 THRU HIGHEST; -5 -numàèìñò,10,,Scale,Input,8,Right,F8.0,F8.0,LOWEST THRU 1; 5 +num1,1,,Unknown,Input,8,Right,F8.0,F8.0, +num2,2,Numeric variable 2's label (ùúû),Unknown,Input,8,Right,F8.0,F8.0, +num3,3,,Unknown,Input,8,Right,F8.0,F8.0,1 +num4,4,Another numeric variable label,Unknown,Input,8,Right,F8.0,F8.0,1 +num5,5,,Unknown,Input,8,Right,F8.0,F8.0,1; 2 +num6,6,,Unknown,Input,8,Right,F8.0,F8.0,1; 2; 3 +num7,7,,Unknown,Input,8,Right,F8.0,F8.0,1 THRU 3 +num8,8,,Unknown,Input,8,Right,F8.0,F8.0,1 THRU 3; 5 +num9,9,,Unknown,Input,8,Right,F8.0,F8.0,1 THRU HIGHEST; -5 +numàèìñò,10,,Unknown,Input,8,Right,F8.0,F8.0,LOWEST THRU 1; 5 str1,11,,Nominal,Input,4,Left,A4,A4, str2,12,String variable 2's label,Nominal,Input,4,Left,A4,A4, str3,13,,Nominal,Input,4,Left,A4,A4,"""MISS""" @@ -221,9 +221,9 @@ LIST. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -num2,2,Numeric variable 2's label,Scale,Input,8,Right,F8.0,F8.0, +Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format +num1,1,,Unknown,Input,8,Right,F8.0,F8.0 +num2,2,Numeric variable 2's label,Unknown,Input,8,Right,F8.0,F8.0 Table: Data List num1,num2 @@ -275,9 +275,9 @@ LIST. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -num2,2,Numeric variable 2's label,Scale,Input,8,Right,F8.0,F8.0, +Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format +num1,1,,Unknown,Input,8,Right,F8.0,F8.0 +num2,2,Numeric variable 2's label,Unknown,Input,8,Right,F8.0,F8.0 Table: Data List num1,num2 @@ -408,24 +408,24 @@ DISPLAY DICTIONARY. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -num2,2,,Scale,Input,8,Right,F8.0,F8.0, -num3,3,,Scale,Input,8,Right,F8.0,F8.0, -num4,4,,Scale,Input,8,Right,F8.0,F8.0, -num5,5,,Scale,Input,8,Right,F8.0,F8.0, -str1,6,,Nominal,Input,1,Left,A1,A1, -str2,7,,Nominal,Input,2,Left,A2,A2, -str3,8,,Nominal,Input,3,Left,A3,A3, -str4,9,,Nominal,Input,4,Left,A4,A4, -str5,10,,Nominal,Input,4,Left,A4,A4, -str6,11,,Nominal,Input,6,Left,A6,A6, -str7,12,,Nominal,Input,7,Left,A7,A7, -str8,13,,Nominal,Input,8,Left,A8,A8, -str9ж,14,,Nominal,Input,9,Left,A9,A9, -str12,15,,Nominal,Input,12,Left,A12,A12, -str16,16,,Nominal,Input,16,Left,A16,A16, -str17,17,,Nominal,Input,17,Left,A17,A17, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +num1,1,Unknown,Input,8,Right,F8.0,F8.0 +num2,2,Unknown,Input,8,Right,F8.0,F8.0 +num3,3,Unknown,Input,8,Right,F8.0,F8.0 +num4,4,Unknown,Input,8,Right,F8.0,F8.0 +num5,5,Unknown,Input,8,Right,F8.0,F8.0 +str1,6,Nominal,Input,1,Left,A1,A1 +str2,7,Nominal,Input,2,Left,A2,A2 +str3,8,Nominal,Input,3,Left,A3,A3 +str4,9,Nominal,Input,4,Left,A4,A4 +str5,10,Nominal,Input,4,Left,A4,A4 +str6,11,Nominal,Input,6,Left,A6,A6 +str7,12,Nominal,Input,7,Left,A7,A7 +str8,13,Nominal,Input,8,Left,A8,A8 +str9ж,14,Nominal,Input,9,Left,A9,A9 +str12,15,Nominal,Input,12,Left,A12,A12 +str16,16,Nominal,Input,16,Left,A16,A16 +str17,17,Nominal,Input,17,Left,A17,A17 Table: Value Labels Variable Value,,Label @@ -699,7 +699,7 @@ dnl Character encoding record. dnl Dictionary termination record. 999; 0; ]) -for variant in be le; do +for variant in be; do AT_CHECK([sack --$variant sys-file.sack > sys-file.sav]) AT_DATA([sys-file.sps], [dnl SYSFILE INFO FILE='sys-file.sav'. @@ -784,19 +784,19 @@ DISPLAY DICTIONARY. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -a,1,,Nominal,Input,8,Left,F8.0,F8.0, -b,2,,Ordinal,Input,8,Left,F8.0,F8.0, -c,3,,Scale,Input,8,Left,F8.0,F8.0, -d,4,,Nominal,Input,8,Right,F8.0,F8.0, -h,5,,Ordinal,Input,3,Right,A3,A3, -i,6,,Scale,Input,3,Right,A3,A3, -j,7,,Nominal,Input,3,Center,A3,A3, -k,8,,Ordinal,Input,3,Center,A3,A3, -l,9,,Scale,Input,9,Center,A9,A9, -m,10,,Nominal,Input,10,Left,A10,A10, -n,11,,Nominal,Input,17,Right,A17,A17, -o,12,,Nominal,Input,25,Center,A25,A25, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +a,1,Nominal,Input,8,Left,F8.0,F8.0 +b,2,Ordinal,Input,8,Left,F8.0,F8.0 +c,3,Scale,Input,8,Left,F8.0,F8.0 +d,4,Nominal,Input,8,Right,F8.0,F8.0 +h,5,Ordinal,Input,3,Right,A3,A3 +i,6,Scale,Input,3,Right,A3,A3 +j,7,Nominal,Input,3,Center,A3,A3 +k,8,Ordinal,Input,3,Center,A3,A3 +l,9,Scale,Input,9,Center,A9,A9 +m,10,Nominal,Input,10,Left,A10,A10 +n,11,Nominal,Input,17,Right,A17,A17 +o,12,Nominal,Input,25,Center,A25,A25 ]) done AT_CLEANUP @@ -867,19 +867,19 @@ DISPLAY DICTIONARY. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -a,1,,Nominal,Input,1,Left,F8.0,F8.0, -b,2,,Ordinal,Input,2,Left,F8.0,F8.0, -c,3,,Scale,Input,3,Left,F8.0,F8.0, -d,4,,Nominal,Input,4,Right,F8.0,F8.0, -h,5,,Ordinal,Input,5,Right,A3,A3, -i,6,,Scale,Input,6,Right,A3,A3, -j,7,,Nominal,Input,7,Center,A3,A3, -k,8,,Ordinal,Input,8,Center,A3,A3, -l,9,,Scale,Input,9,Center,A9,A9, -m,10,,Nominal,Input,10,Left,A10,A10, -n,11,,Nominal,Input,11,Right,A17,A17, -o,12,,Nominal,Input,12,Center,A25,A25, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +a,1,Nominal,Input,1,Left,F8.0,F8.0 +b,2,Ordinal,Input,2,Left,F8.0,F8.0 +c,3,Scale,Input,3,Left,F8.0,F8.0 +d,4,Nominal,Input,4,Right,F8.0,F8.0 +h,5,Ordinal,Input,5,Right,A3,A3 +i,6,Scale,Input,6,Right,A3,A3 +j,7,Nominal,Input,7,Center,A3,A3 +k,8,Ordinal,Input,8,Center,A3,A3 +l,9,Scale,Input,9,Center,A9,A9 +m,10,Nominal,Input,10,Left,A10,A10 +n,11,Nominal,Input,11,Right,A17,A17 +o,12,Nominal,Input,12,Center,A25,A25 ]) done AT_CLEANUP @@ -939,14 +939,14 @@ DISPLAY DICTIONARY. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -LongVariableName1,1,,Scale,Input,8,Right,F8.0,F8.0, -LongVariableName2,2,,Scale,Input,8,Right,F8.0,F8.0, -LongVariableName3,3,,Scale,Input,8,Right,F8.0,F8.0, -LongVariableName4,4,,Scale,Input,8,Right,F8.0,F8.0, -Coördinate_X,5,,Scale,Input,8,Right,F8.0,F8.0, -Coördinate_Y,6,,Scale,Input,8,Right,F8.0,F8.0, -Coördinate_Z,7,,Scale,Input,8,Right,F8.0,F8.0, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +LongVariableName1,1,Unknown,Input,8,Right,F8.0,F8.0 +LongVariableName2,2,Unknown,Input,8,Right,F8.0,F8.0 +LongVariableName3,3,Unknown,Input,8,Right,F8.0,F8.0 +LongVariableName4,4,Unknown,Input,8,Right,F8.0,F8.0 +Coördinate_X,5,Unknown,Input,8,Right,F8.0,F8.0 +Coördinate_Y,6,Unknown,Input,8,Right,F8.0,F8.0 +Coördinate_Z,7,Unknown,Input,8,Right,F8.0,F8.0 ]) done AT_CLEANUP @@ -1009,9 +1009,9 @@ LIST. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -séq256,1,,Nominal,Input,32,Left,A256,A256, -str600,2,,Nominal,Input,32,Left,A600,A600, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +séq256,1,Nominal,Input,32,Left,A256,A256 +str600,2,Nominal,Input,32,Left,A600,A600 Table: Data List séq256,str600 @@ -1104,10 +1104,10 @@ DISPLAY DICTIONARY. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [[Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -FirstVariable,1,,Scale,Output,8,Right,F8.0,F8.0, -SécondVariable,2,,Scale,Input,8,Right,F8.0,F8.0, -ThirdVariable,3,,Scale,Input,8,Right,F8.0,F8.0, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +FirstVariable,1,Unknown,Output,8,Right,F8.0,F8.0 +SécondVariable,2,Unknown,Input,8,Right,F8.0,F8.0 +ThirdVariable,3,Unknown,Input,8,Right,F8.0,F8.0 ]]) done AT_CLEANUP @@ -1168,14 +1168,14 @@ warning: `sys-file.sav': Invalid role for variable x. warning: `sys-file.sav': Invalid role for variable x. Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -i,1,,Scale,Input,8,Right,F8.0,F8.0, -o,2,,Scale,Output,8,Right,F8.0,F8.0, -b,3,,Scale,Both,8,Right,F8.0,F8.0, -n,4,,Scale,None,8,Right,F8.0,F8.0, -p,5,,Scale,Partition,8,Right,F8.0,F8.0, -s,6,,Scale,Split,8,Right,F8.0,F8.0, -x,7,,Scale,Input,8,Right,F8.0,F8.0, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +i,1,Unknown,Input,8,Right,F8.0,F8.0 +o,2,Unknown,Output,8,Right,F8.0,F8.0 +b,3,Unknown,Both,8,Right,F8.0,F8.0 +n,4,Unknown,None,8,Right,F8.0,F8.0 +p,5,Unknown,Partition,8,Right,F8.0,F8.0 +s,6,Unknown,Split,8,Right,F8.0,F8.0 +x,7,Unknown,Input,8,Right,F8.0,F8.0 ]) done AT_CLEANUP @@ -1227,12 +1227,12 @@ LIST. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -num2,2,,Scale,Input,8,Right,F8.0,F8.0, -str4,3,,Nominal,Input,4,Left,A4,A4, -str8,4,,Nominal,Input,8,Left,A8,A8, -str15,5,,Nominal,Input,15,Left,A15,A15, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +num1,1,Unknown,Input,8,Right,F8.0,F8.0 +num2,2,Unknown,Input,8,Right,F8.0,F8.0 +str4,3,Nominal,Input,4,Left,A4,A4 +str8,4,Nominal,Input,8,Left,A8,A8 +str15,5,Nominal,Input,15,Left,A15,A15 Table: Data List num1,num2,str4,str8,str15 @@ -1290,12 +1290,12 @@ LIST. AT_CHECK([pspp -o pspp.csv sys-file.sps], [0]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -num2,2,,Scale,Input,8,Right,F8.0,F8.0, -str4,3,,Nominal,Input,4,Left,A4,A4, -str8,4,,Nominal,Input,8,Left,A8,A8, -str15,5,,Nominal,Input,15,Left,A15,A15, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +num1,1,Unknown,Input,8,Right,F8.0,F8.0 +num2,2,Unknown,Input,8,Right,F8.0,F8.0 +str4,3,Nominal,Input,4,Left,A4,A4 +str8,4,Nominal,Input,8,Left,A8,A8 +str15,5,Nominal,Input,15,Left,A15,A15 Table: Data List num1,num2,str4,str8,str15 @@ -1357,12 +1357,12 @@ LIST. "warning: `sys-file.sav' near offset 0x54: Compression bias is not the usual value of 100, or system file uses unrecognized floating-point format." Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -num2,2,,Scale,Input,8,Right,F8.0,F8.0, -str4,3,,Nominal,Input,4,Left,A4,A4, -str8,4,,Nominal,Input,8,Left,A8,A8, -str15,5,,Nominal,Input,15,Left,A15,A15, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +num1,1,Unknown,Input,8,Right,F8.0,F8.0 +num2,2,Unknown,Input,8,Right,F8.0,F8.0 +str4,3,Nominal,Input,4,Left,A4,A4 +str8,4,Nominal,Input,8,Left,A8,A8 +str15,5,Nominal,Input,15,Left,A15,A15 Table: Data List num1,num2,str4,str8,str15 @@ -1455,12 +1455,12 @@ LIST. AT_CHECK([pspp -o pspp.csv sys-file.sps]) AT_CHECK([cat pspp.csv], [0], [dnl Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -num2,2,,Scale,Input,8,Right,F8.0,F8.0, -str4,3,,Nominal,Input,4,Left,A4,A4, -str8,4,,Nominal,Input,8,Left,A8,A8, -str15,5,,Nominal,Input,15,Left,A15,A15, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +num1,1,Unknown,Input,8,Right,F8.0,F8.0 +num2,2,Unknown,Input,8,Right,F8.0,F8.0 +str4,3,Nominal,Input,4,Left,A4,A4 +str8,4,Nominal,Input,8,Left,A8,A8 +str15,5,Nominal,Input,15,Left,A15,A15 Table: Data List num1,num2,str4,str8,str15 @@ -1638,8 +1638,8 @@ for variant in be le; do AT_CHECK([sack --$variant sys-file.sack > sys-file.sav]) AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'. ]) - AT_CHECK([pspp -O format=csv sys-file.sps], [1], - [error: `sys-file.sav' near offset 0xb4: Invalid variable name `$UM1'. + AT_CHECK([pspp -O format=csv sys-file.sps], 0, + [warning: `sys-file.sav' near offset 0xb4: Renaming variable with invalid name `$UM1' to `VAR001'. ]) done AT_CLEANUP @@ -1664,8 +1664,8 @@ for variant in be le; do AT_CHECK([sack --$variant sys-file.sack > sys-file.sav]) AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'. ]) - AT_CHECK([pspp -O format=csv sys-file.sps], [1], - [error: `sys-file.sav' near offset 0xb4: Invalid variable name `TO'. + AT_CHECK([pspp -O format=csv sys-file.sps], 0, + [warning: `sys-file.sav' near offset 0xb4: Renaming variable with invalid name `TO' to `VAR001'. ]) done AT_CLEANUP @@ -1724,9 +1724,9 @@ DISPLAY DICTIONARY. [warning: `sys-file.sav' near offset 0xd4: Renaming variable with duplicate name `VAR1' to `VAR001'. Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -var1,1,,Scale,Input,8,Right,F8.0,F8.0, -var001,2,,Scale,Input,8,Right,F8.0,F8.0, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +var1,1,Unknown,Input,8,Right,F8.0,F8.0 +var001,2,Unknown,Input,8,Right,F8.0,F8.0 ]) done AT_CLEANUP @@ -1965,11 +1965,11 @@ warning: `sys-file.sav' near offset 0x257: Ignoring long string missing value re "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." Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -str1,2,,Nominal,Input,9,Left,A9,A9, -str2,3,,Nominal,Input,10,Left,A10,A10,"""abcdefgh""; ""ijklmnop""; ""qrstuvwx""" -str3,4,,Nominal,Input,11,Left,A11,A11, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values +num1,1,Unknown,Input,8,Right,F8.0,F8.0, +str1,2,Nominal,Input,9,Left,A9,A9, +str2,3,Nominal,Input,10,Left,A10,A10,"""abcdefgh""; ""ijklmnop""; ""qrstuvwx""" +str3,4,Nominal,Input,11,Left,A11,A11, ]) done AT_CLEANUP @@ -1999,12 +1999,12 @@ for variant in be le; do DISPLAY DICTIONARY. ]) AT_CHECK([pspp -O format=csv sys-file.sps], [0], - [warning: `sys-file.sav': Ignoring string variable `STR1' set as weighting variable. + [warning: `sys-file.sav' near offset 0x4c: Ignoring string variable `STR1' set as weighting variable. Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, -str1,2,,Nominal,Input,4,Left,A4,A4, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +num1,1,Unknown,Input,8,Right,F8.0,F8.0 +str1,2,Nominal,Input,4,Left,A4,A4 ]) done AT_CLEANUP @@ -2032,8 +2032,8 @@ for variant in be le; do AT_CHECK([sack --$variant sys-file.sack > sys-file.sav]) AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'. ]) - AT_CHECK([pspp -O format=csv sys-file.sps], [1], - [error: `sys-file.sav' near offset 0x4c: Variable index 3 not in valid range 1...2. + AT_CHECK([pspp -O format=csv sys-file.sps], 0, + [warning: `sys-file.sav' near offset 0x4c: Weight variable index 3 not in valid range 1...2. Treating file as unweighted. ]) done AT_CLEANUP @@ -2062,8 +2062,8 @@ for variant in be le; do AT_CHECK([sack --$variant sys-file.sack > sys-file.sav]) AT_DATA([sys-file.sps], [GET FILE='sys-file.sav'. ]) - AT_CHECK([pspp -O format=csv sys-file.sps], [1], - [error: `sys-file.sav' near offset 0x4c: Variable index 3 refers to long string continuation. + AT_CHECK([pspp -O format=csv sys-file.sps], 0, + [warning: `sys-file.sav' near offset 0x4c: Weight variable index 3 refers to long string continuation. Treating file as unweighted. ]) done AT_CLEANUP @@ -2075,18 +2075,19 @@ dnl File header. "$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file"; 2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3; -dnl Numeric variable, no label or missing values. +dnl Numeric variables, no label or missing values. 2; 0; 0; 0; 0x050800 *2; s8 "NUM1"; +2; 0; 0; 0; 0x050800 *2; s8 "NUM2"; dnl Two document records. (6; 1; s80 "One line of documents") >>* 2<<; -dnl Dictionary termination record. -999; 0; - dnl Character encoding record. 7; 20; 1; 12; "windows-1252"; +dnl Dictionary termination record. +999; 0; + dnl Data. 1.0; ]) @@ -2095,8 +2096,8 @@ for variant in be le; do AT_DATA([sys-file.sps], [dnl GET FILE='sys-file.sav'. ]) - AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl -error: `sys-file.sav' near offset 0x12c: Duplicate type 6 (document) record. + AT_CHECK([pspp -O format=csv sys-file.sps], 0, [dnl +warning: `sys-file.sav' near offset 0x14c: Duplicate type 6 (document) record. ]) done AT_CLEANUP @@ -2246,8 +2247,8 @@ DISPLAY DICTIONARY. warning: \`sys-file.sav' near offset 0xd8: Integer format indicated by system file (3) differs from expected ($[2]). Table: Variables -Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format,Missing Values -num1,1,,Scale,Input,8,Right,F8.0,F8.0, +Name,Position,Measurement Level,Role,Width,Alignment,Print Format,Write Format +num1,1,Unknown,Input,8,Right,F8.0,F8.0 ]) done AT_CLEANUP @@ -3171,8 +3172,82 @@ for variant in be le; do AT_DATA([sys-file.sps], [dnl GET FILE='sys-file.sav'. ]) - AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl -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. + AT_CHECK([pspp -O format=csv sys-file.sps], 0, [dnl +warning: `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. +]) +done +AT_CLEANUP + +AT_SETUP([value label variable indexes must be in correct range]) +AT_KEYWORDS([sack synthetic system file negative]) +AT_DATA([sys-file.sack], [dnl +dnl File header. +"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file"; +2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3; + +dnl Variables. +2; 6; 0; 0; 0x010600 *2; s8 "STR1"; +2; 0; 0; 0; 0x050800 *2; s8 "NUM1"; + +dnl Value labels with bad variable indexes. +3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 2; >>3; 4;<< +3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 2; >>5; 6;<< +3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 2; >>7; 8;<< + +dnl Character encoding record. +7; 20; 1; 12; "windows-1252"; + +dnl End of dictionary. +999; 0; +]) +for variant in be le; do + AT_CHECK([sack --$variant sys-file.sack > sys-file.sav]) + AT_DATA([sys-file.sps], [dnl +GET FILE='sys-file.sav'. +]) + AT_CHECK([pspp -O format=csv sys-file.sps], 0, [dnl +warning: `sys-file.sav' near offset 0xf4: Value label variable index 3 not in valid range 1...2. + +warning: `sys-file.sav' near offset 0xf4: Value label variable index 4 not in valid range 1...2. + +warning: `sys-file.sav' near offset 0x11c: Value label variable index 5 not in valid range 1...2. + +warning: `sys-file.sav' near offset 0x11c: Value label variable index 6 not in valid range 1...2. + +warning: `sys-file.sav' near offset 0x144: Value label variable index 7 not in valid range 1...2. + +warning: `sys-file.sav': Suppressed 1 additional warnings for value labels. +]) +done +AT_CLEANUP + +AT_SETUP([value label variable indexes must not be long string continuation]) +AT_KEYWORDS([sack synthetic system file negative]) +AT_DATA([sys-file.sack], [dnl +dnl File header. +"$FL2"; s60 "$(#) SPSS DATA FILE PSPP synthetic test file"; +2; 2; 1; 0; -1; 100.0; "01 Jan 11"; "20:53:52"; s64 ""; i8 0 *3; + +dnl Long string variable. +2; 9; 0; 0; 0x010900 *2; s8 "STR1"; +(2; -1; 0; 0; 0; 0; s8 ""); + +dnl Value label with long string indexes. +3; 1; s8 "xyzzy"; i8 3; s7 "one"; 4; 1; >>2;<< + +dnl Character encoding record. +7; 20; 1; 12; "windows-1252"; + +dnl End of dictionary. +999; 0; +]) +for variant in be le; do + AT_CHECK([sack --$variant sys-file.sack > sys-file.sav]) + AT_DATA([sys-file.sps], [dnl +GET FILE='sys-file.sav'. +]) + AT_CHECK([pspp -O format=csv sys-file.sps], 0, [dnl +warning: `sys-file.sav' near offset 0xf4: Value label variable index 2 refers to long string continuation. ]) done AT_CLEANUP @@ -3202,8 +3277,8 @@ for variant in be le; do AT_DATA([sys-file.sps], [dnl GET FILE='sys-file.sav'. ]) - AT_CHECK([pspp -O format=csv sys-file.sps], [1], [dnl -"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." + AT_CHECK([pspp -O format=csv sys-file.sps], 0, [dnl +"warning: `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." ]) done AT_CLEANUP