X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Flanguage%2Fdictionary%2Fmissing-values.at;h=d4a901658276385104a6bf51b5084c0504f8787d;hb=da01baa7c5ac97ee0b23db58585b50c587f12957;hp=84ee1725296e4a2d3db1f7d795958821a6d5cec9;hpb=14f4522a17db23e67a6fa17876633cc6260cb42b;p=pspp diff --git a/tests/language/dictionary/missing-values.at b/tests/language/dictionary/missing-values.at index 84ee172529..d4a9016582 100644 --- a/tests/language/dictionary/missing-values.at +++ b/tests/language/dictionary/missing-values.at @@ -62,103 +62,67 @@ MISSING VALUES ALL (). DISPLAY DICTIONARY ]) AT_CHECK([pspp -o pspp.csv missing-values.sps]) -AT_CHECK([sed -n '/Format/s/,.*/:/p -s/"//g -s/^,Missing Values: \([[^,]]*\),.*/\1/p -/^$/p' pspp.csv +AT_CHECK([sed -n '/^$/p; /^@<:@^"@:>@*"@<:@^"@:>@*$/N; s/^\(@<:@a-z0-9@:>@*\),".*Missing Values: \(.*\)",@<:@0-9@:>@*$/\1: \2/p; s/^\(@<:@a-z0-9@:>@*\),Format: @<:@A-Z0-9.@:>@*,@<:@0-9@:>@*$/\1: none/p' pspp.csv ], [0], [dnl -date1: -1 -num1: -1 - -date1: -1; 2 -num1: -1; 2 - -date1: -1; 2; 3 -num1: -1; 2; 3 - -date1: -9999998; 9999984; 3 -num1: -9999998; 9999984; 3 - -date1: -1 -num1: -1 - -date1: -1; 2 -num1: -1; 2 - -date1: -1; 2; 3 -num1: -1; 2; 3 - -date1: -13342665600 -num1: -13342665600 - -date1: -13342665600; 12495427200 -num1: -13342665600; 12495427200 - -date1: -13342665600; 12495427200; 12570336000 -num1: -13342665600; 12495427200; 12570336000 - -num1: -1 THRU 2 - -num1: -LOWEST THRU 2 - -num1: -LOWEST THRU 2 - -num1: -1 THRU HIGHEST - -num1: -1 THRU HIGHEST - -num1: -1 THRU 2; 3 - -num1: -LOWEST THRU 2; 3 - -num1: -LOWEST THRU 2; 3 - -num1: -1 THRU HIGHEST; -1 - -num1: -1 THRU HIGHEST; -1 - -str1: -abc ; def @&t@ -str2: -abc; def -longstr: -abc ; def @&t@ - -str1: -str2: -date1: -num1: -longstr: +date1: 1 +num1: 1 + +date1: 1; 2 +num1: 1; 2 + +date1: 1; 2; 3 +num1: 1; 2; 3 + +date1: 9999998; 9999984; 3 +num1: 9999998; 9999984; 3 + +date1: 1 +num1: 1 + +date1: 1; 2 +num1: 1; 2 + +date1: 1; 2; 3 +num1: 1; 2; 3 + +date1: 13342665600 +num1: 13342665600 + +date1: 13342665600; 12495427200 +num1: 13342665600; 12495427200 + +date1: 13342665600; 12495427200; 12570336000 +num1: 13342665600; 12495427200; 12570336000 + +num1: 1 THRU 2 + +num1: LOWEST THRU 2 + +num1: LOWEST THRU 2 + +num1: 1 THRU HIGHEST + +num1: 1 THRU HIGHEST + +num1: 1 THRU 2; 3 + +num1: LOWEST THRU 2; 3 + +num1: LOWEST THRU 2; 3 + +num1: 1 THRU HIGHEST; -1 + +num1: 1 THRU HIGHEST; -1 + +str1: ""abc ""; ""def "" +str2: ""abc""; ""def"" +longstr: ""abc ""; ""def "" + +str1: none +str2: none +date1: none +num1: none +longstr: none ]) AT_CLEANUP @@ -178,6 +142,15 @@ MISSING VALUES str1 ('a' THRU 'z'). * Mixing string and numeric variables. MISSING VALUES str1 num1 ('123'). + +* Too many values. +MISSING VALUES num1 (1, 2, 3, 4). +MISSING VALUES num1 (1 THRU 2, 3 THRU 4). +MISSING VALUES num1 (1, 2 THRU 3, 4). +MISSING VALUES str1 ('abc', 'def', 'ghi', 'jkl'). + +* Bad range. +MISSING VALUES num1 (2 THRU 1). ]) AT_CHECK([pspp -O format=csv missing-values.sps], [1], [dnl missing-values.sps:5: error: MISSING VALUES: Missing values provided are too long to assign to variable of width 3. @@ -189,5 +162,15 @@ missing-values.sps:11.26-11.29: error: MISSING VALUES: Syntax error at `THRU': e missing-values.sps:11: error: MISSING VALUES: THRU is not a variable name. missing-values.sps:14: error: MISSING VALUES: Cannot mix numeric variables (e.g. num1) and string variables (e.g. str1) within a single list. + +missing-values.sps:17: error: MISSING VALUES: Too many numeric missing values. At most three individual values or one value and one range are allowed. + +missing-values.sps:18: error: MISSING VALUES: Too many numeric missing values. At most three individual values or one value and one range are allowed. + +missing-values.sps:19: error: MISSING VALUES: Too many numeric missing values. At most three individual values or one value and one range are allowed. + +missing-values.sps:20: error: MISSING VALUES: Too many string missing values. At most three individual values are allowed. + +missing-values.sps:23: warning: MISSING VALUES: The high end of the range (1) is below the low end (2). The range will be treated as if reversed. ]) AT_CLEANUP