X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Flanguage%2Fstats%2Frank.at;h=eb0b71b10752abd728fc894088e124bfdf8bb9d8;hb=0200682d517fd4b7cfc4e333378de03bcf74be43;hp=45ca41aea016a0d30c050fda87327d46a3d1b2b3;hpb=ff5e81803b409939e921211f1ffd46cb24df33e9;p=pspp diff --git a/tests/language/stats/rank.at b/tests/language/stats/rank.at index 45ca41aea0..eb0b71b107 100644 --- a/tests/language/stats/rank.at +++ b/tests/language/stats/rank.at @@ -1,3 +1,19 @@ +dnl PSPP - a program for statistical analysis. +dnl Copyright (C) 2017 Free Software Foundation, Inc. +dnl +dnl This program is free software: you can redistribute it and/or modify +dnl it under the terms of the GNU General Public License as published by +dnl the Free Software Foundation, either version 3 of the License, or +dnl (at your option) any later version. +dnl +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +dnl GNU General Public License for more details. +dnl +dnl You should have received a copy of the GNU General Public License +dnl along with this program. If not, see . +dnl AT_BANNER([RANK]) AT_SETUP([RANK simple case with defaults]) @@ -5,12 +21,12 @@ AT_DATA([rank.sps], [dnl DATA LIST LIST NOTABLE /x (f8). BEGIN DATA. -1 -0 -1 -2 -2 -4 -5 +0 +1 +2 +2 +4 +5 END DATA. RANK x. @@ -19,11 +35,9 @@ LIST. ]) AT_CHECK([pspp -o pspp.csv rank.sps]) AT_CHECK([cat pspp.csv], [0], [dnl -Variables Created By RANK - - - -x into Rx(RANK of x) +Table: Variables Created by RANK +Existing Variable,New Variable,Function +x,Rx,RANK Table: Data List x,Rx @@ -37,6 +51,36 @@ x,Rx ]) AT_CLEANUP +# This checks for regression against a crash reported as bug #38482 +# that occurred when multiple variables were specified without any +# rank specifications. +AT_SETUP([RANK multiple variables with defaults]) +AT_DATA([rank.sps], [dnl +DATA LIST LIST NOTABLE /x * y * z *. +BEGIN DATA. + 1.00 2.00 3.00 + 4.00 5.00 6.00 +END DATA. + +RANK ALL. + +LIST. +]) +AT_CHECK([pspp -o pspp.csv rank.sps]) +AT_CHECK([cat pspp.csv], [0], [dnl +Table: Variables Created by RANK +Existing Variable,New Variable,Function +x,Rx,RANK +y,Ry,RANK +z,Rz,RANK + +Table: Data List +x,y,z,Rx,Ry,Rz +1.00,2.00,3.00,1.000,1.000,1.000 +4.00,5.00,6.00,2.000,2.000,2.000 +]) +AT_CLEANUP + AT_SETUP([RANK with RANK, RFRACTION, N]) AT_DATA([rank.sps], [dnl DATA LIST LIST NOTABLE /a * b *. @@ -54,7 +98,7 @@ BEGIN DATA. END DATA. RANK a b (D) - /PRINT=YES + /PRINT=YES /RANK /TIES=HIGH /RFRACTION @@ -67,61 +111,25 @@ LIST. ]) AT_CHECK([pspp -o pspp.csv rank.sps]) AT_CHECK([cat pspp.csv], [0], [dnl -Variables Created By RANK - - - -a into Ra(RANK of a) - -b into Rb(RANK of b) - -a into RFR001(RFRACTION of a) - -b into RFR002(RFRACTION of b) - -a into count(N of a) - -b into Nb(N of b) - -Variable,Description,,Position -a,Format: F8.2,,1 -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -b,Format: F8.2,,2 -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -Ra,RANK of a,,3 -,Format: F9.3,, -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -RFR001,RFRACTION of a,,4 -,Format: F6.4,, -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -count,N of a,,5 -,Format: F6.0,, -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -Rb,RANK of b,,6 -,Format: F9.3,, -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -RFR002,RFRACTION of b,,7 -,Format: F6.4,, -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -Nb,N of b,,8 -,Format: F6.0,, -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, +Table: Variables Created by RANK +Existing Variable,New Variable,Function +a,Ra,RANK +b,Rb,RANK +a,RFR001,RFRACTION +b,RFR002,RFRACTION +a,count,N +b,Nb,N + +Table: Variables +Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format +a,1,,Scale,Input,8,Right,F8.2,F8.2 +b,2,,Scale,Input,8,Right,F8.2,F8.2 +Ra,3,RANK of a,Scale,Input,8,Right,F9.3,F9.3 +RFR001,4,RFRACTION of a,Scale,Input,8,Right,F6.4,F6.4 +count,5,N of a,Scale,Input,8,Right,F6.0,F6.0 +Rb,6,RANK of b,Scale,Input,8,Right,F9.3,F9.3 +RFR002,7,RFRACTION of b,Scale,Input,8,Right,F6.4,F6.4 +Nb,8,N of b,Scale,Input,8,Right,F6.0,F6.0 Table: Data List a,b,Ra,RFR001,count,Rb,RFR002,Nb @@ -150,7 +158,7 @@ BEGIN DATA. 5 29 6 1 7 43 -8 8 +8 8 9 45 END DATA. @@ -168,19 +176,13 @@ LIST. ]) AT_CHECK([pspp -o pspp.csv rank.sps]) AT_CHECK([cat pspp.csv], [0], [dnl -Variables Created By RANK - - - -a into Sa(SAVAGE of a) - -a into Pa(PERCENT of a) - -a into PRO001(PROPORTION of a using BLOM) - -a into Na(NTILES of a) - -a into NOR001(NORMAL of a using BLOM) +Table: Variables Created by RANK +Existing Variable,New Variable,Function,Fraction +a,Sa,SAVAGE, +a,Pa,PERCENT, +a,PRO001,PROPORTION,BLOM +a,Na,NTILES, +a,NOR001,NORMAL,BLOM Table: Data List a,b,Sa,Pa,PRO001,Na,NOR001 @@ -247,21 +249,15 @@ LIST. ]) AT_CHECK([pspp -o pspp.csv rank.sps]) AT_CHECK([cat pspp.csv], [0], [dnl -Variables Created By RANK - - - -a into Ra(RANK of a BY g2 g1) - -a into Na(NORMAL of a using RANKIT BY g2 g1) - -Variables Created By RANK - +Table: Variables Created by RANK +Existing Variable,New Variable,Function,Fraction,Grouping Variables +a,Ra,RANK,,g2 g1 +a,Na,NORMAL,RANKIT,g2 g1 - -a into RAN001(RANK of a BY g2) - -a into NOR001(NORMAL of a using RANKIT BY g2) +Table: Variables Created by RANK +Existing Variable,New Variable,Function,Fraction,Grouping Variables +a,RAN001,RANK,,g2 +a,NOR001,NORMAL,RANKIT,g2 Table: Data List a,g1,g2,Ra,Na,RAN001,NOR001 @@ -287,7 +283,7 @@ a,g1,g2,Ra,Na,RAN001,NOR001 AT_CLEANUP # Also tests small ranks for special case of SAVAGE ranks. -AT_SETUP([RANK with fractional ranks]) +AT_SETUP([RANK with fractional ranks]) AT_DATA([rank.sps], [dnl DATA LIST LIST NOTABLE /a * w * . BEGIN DATA. @@ -303,7 +299,7 @@ END DATA. WEIGHT BY w. -RANK a +RANK a /FRACTION=TUKEY /PROPORTION /SAVAGE @@ -313,13 +309,10 @@ LIST. ]) AT_CHECK([pspp -o pspp.csv rank.sps]) AT_CHECK([cat pspp.csv], [0], [dnl -Variables Created By RANK - - - -a into Pa(PROPORTION of a using TUKEY) - -a into Sa(SAVAGE of a) +Table: Variables Created by RANK +Existing Variable,New Variable,Function,Fraction +a,Pa,PROPORTION,TUKEY +a,Sa,SAVAGE, Table: Data List a,w,Pa,Sa @@ -374,29 +367,21 @@ LIST. ]) AT_CHECK([pspp -o pspp.csv rank.sps]) AT_CHECK([cat pspp.csv], [0], [dnl -Variables Created By RANK - - - -x into xl(RANK of x) - -Variables Created By RANK - - - -x into xh(RANK of x) - -Variables Created By RANK - - - -x into xc(RANK of x) +Table: Variables Created by RANK +Existing Variable,New Variable,Function +x,xl,RANK -Variables Created By RANK +Table: Variables Created by RANK +Existing Variable,New Variable,Function +x,xh,RANK +Table: Variables Created by RANK +Existing Variable,New Variable,Function +x,xc,RANK - -x into Nx(NORMAL of x using VW) +Table: Variables Created by RANK +Existing Variable,New Variable,Function,Fraction +x,Nx,NORMAL,VW Table: Data List x,w,xl,xh,xc,Nx @@ -439,17 +424,13 @@ RANK age /RANK INTO Rf. LIST. ]) AT_CHECK([pspp -O format=csv rank.sps], [0], [dnl -Variables Created By RANK - - - -age into Rm(RANK of age) - -Variables Created By RANK +Table: Variables Created by RANK +Existing Variable,New Variable,Function +age,Rm,RANK - - -age into Rf(RANK of age) +Table: Variables Created by RANK +Existing Variable,New Variable,Function +age,Rf,RANK Table: Data List age,gender,Rm,Rf @@ -490,30 +471,16 @@ DISPLAY DICTIONARY. ]) AT_CHECK([pspp -o pspp.csv rank.sps]) AT_CHECK([cat pspp.csv], [0], [dnl -Variables Created By RANK - - - -foo into RAN001(RANK of foo) - -Variable,Description,,Position -foo,Format: F8.2,,1 -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -rfoo,Format: F8.2,,2 -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -ran003,Format: F8.2,,3 -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, -RAN001,RANK of foo,,4 -,Format: F9.3,, -,Measure: Scale,, -,Display Alignment: Right,, -,Display Width: 8,, +Table: Variables Created by RANK +Existing Variable,New Variable,Function +foo,RAN001,RANK + +Table: Variables +Name,Position,Label,Measurement Level,Role,Width,Alignment,Print Format,Write Format +foo,1,,Scale,Input,8,Right,F8.2,F8.2 +rfoo,2,,Scale,Input,8,Right,F8.2,F8.2 +ran003,3,,Scale,Input,8,Right,F8.2,F8.2 +RAN001,4,RANK of foo,Scale,Input,8,Right,F9.3,F9.3 ]) AT_CLEANUP @@ -551,11 +518,9 @@ AT_CHECK([pspp -O format=csv rank.sps], [0], [dnl "rank.sps:9: warning: Missing value(s) for all variables from rx onward. These will be filled with the system-missing value or blanks, as appropriate." -Variables Created By RANK - - - -x into RNKRA01(RANK of x) +Table: Variables Created by RANK +Existing Variable,New Variable,Function +x,RNKRA01,RANK Table: Data List x,rx,RNKRA01 @@ -588,11 +553,9 @@ DEBUG XFORM FAIL. RANK x. ]) AT_CHECK([pspp -O format=csv --testing-mode rank.sps], [1], [dnl -Variables Created By RANK - - - -x into Rx(RANK of x) +Table: Variables Created by RANK +Existing Variable,New Variable,Function +x,Rx,RANK rank.sps:14: error: RANK: DEBUG XFORM FAIL transformation executed ]) @@ -612,23 +575,23 @@ BEGIN DATA. END DATA. * invalid NTILES (no parameter) -RANK x +RANK x /NTILES . * invalid NTILES (not an integer) -RANK x +RANK x /NTILES(d) . * destination variable already exists -RANK x +RANK x /RANK INTO x. * Too many variables in INTO -RANK x +RANK x /RANK INTO foo bar wiz. ]) AT_CHECK([pspp -O format=csv rank.sps], [1], [dnl