pivot table procedure conceptually works
[pspp] / tests / perl-module.at
index 308dd7711b219a317b0f09f0470fe523f10dc9f2..5424d10324b43cced565710b415258a5a789df28 100644 (file)
@@ -5,8 +5,12 @@ dnl built (with "make") but before it has been installed.  The -I options are
 dnl equivalent to "use ExtUtils::testlib;" inside the Perl program, but it does
 dnl not need to be run with the perl-module build directory as the current
 dnl working directory.
+dnl
+dnl XXX "libtool --mode=execute" is probably better than setting
+dnl LD_LIBRARY_PATH.
 m4_define([RUN_PERL_MODULE],
   [LD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
+   DYLD_LIBRARY_PATH=$abs_top_builddir/src/.libs \
    $PERL -I$abs_top_builddir/perl-module/blib/arch \
          -I$abs_top_builddir/perl-module/blib/lib])
 
@@ -62,15 +66,9 @@ Documents in the active dataset:
 
 These Documents
 
-Variable,Description,,Position
-legal,Format: F9.2,,1
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-money,Format: DOLLAR6.2,,2
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
+Variable,Description,Position
+legal,Format: F9.2,1
+money,Format: DOLLAR6.2,2
 
 dump-dict.sps:5: note: SHOW: WEIGHT is money.
 ])
@@ -139,15 +137,9 @@ DISPLAY DOCUMENTS.
 LIST.
 ])
 AT_CHECK([pspp -O format=csv dump-dicts.sps], [0],
-  [Variable,Description,,Position
-id,Format: F2.0,,1
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-name,Format: A20,,2
-,Measure: Nominal,,
-,Display Alignment: Left,,
-,Display Width: 20,,
+  [Variable,Description,Position
+id,Format: F2.0,1
+name,Format: A20,2
 
 File label: This is the file label
 
@@ -159,15 +151,9 @@ Table: Data List
 id,name
 34,frederick           @&t@
 
-Variable,Description,,Position
-id,Format: F2.0,,1
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-name,Format: A20,,2
-,Measure: Nominal,,
-,Display Alignment: Left,,
-,Display Width: 20,,
+Variable,Description,Position
+id,Format: F2.0,1
+name,Format: A20,2
 
 File label: This is the file label
 
@@ -232,30 +218,27 @@ AT_DATA([dump-dict.sps],
 DISPLAY DICTIONARY.
 ])
 AT_CHECK([pspp -O format=csv dump-dict.sps], [0],
-  [Variable,Description,,Position
-integer,My Integer,,1
-,Format: F8.0,,
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-,Missing Values: 9; 99,,
-,0,Zero,
-,1,Unity,
-,2,Duality,
-string,My String,,2
-,Format: A8,,
-,Measure: Nominal,,
-,Display Alignment: Left,,
-,Display Width: 8,,
-,"Missing Values: ""this    ""; ""that    """,,
-,xx      ,foo,
-,yy      ,bar,
-longstring,My Long String,,3
-,Format: A9,,
-,Measure: Nominal,,
-,Display Alignment: Left,,
-,Display Width: 9,,
-,xxx      ,xfoo,
+  [Variable,Description,Position
+integer,"Label: My Integer
+Format: F8.0
+Missing Values: 9; 99
+
+Value,Label
+0,Zero
+1,Unity
+2,Duality",1
+string,"Label: My String
+Format: A8
+Missing Values: ""this    ""; ""that    ""
+
+Value,Label
+xx      ,foo
+yy      ,bar",2
+longstring,"Label: My Long String
+Format: A9
+
+Value,Label
+xxx      ,xfoo",3
 ])
 AT_CLEANUP
 
@@ -351,7 +334,7 @@ AT_DATA([test.pl],
        my $vl = $var->get_value_labels ();
 
        print "Value Labels:\n";
-       print "$_ => $vl->{$_}\n" for keys %$vl;
+       print "$_ => $vl->{$_}\n" for sort (keys %$vl);
     }
 
     while (my @c = $sf->get_next_case () )
@@ -366,16 +349,16 @@ AT_DATA([test.pl],
 AT_CHECK([RUN_PERL_MODULE test.pl], [0],
   [Variable 0 is "string", label is "A Short String Variable"
 Value Labels:
-3333     => threes
 1111     => ones
 2222     => twos
+3333     => threes
 Variable 1 is "longstring", label is "A Long String Variable"
 Value Labels:
 Variable 2 is "numeric", label is "A Numeric Variable"
 Value Labels:
 1 => Unity
-3 => Thripality
 2 => Duality
+3 => Thripality
 Variable 3 is "date", label is "A Date Variable"
 Value Labels:
 Variable 4 is "dollar", label is "A Dollar Variable"
@@ -452,51 +435,38 @@ DISPLAY DICTIONARY.
 LIST.
 ])
 AT_CHECK([pspp -O format=csv dump-dicts.sps], [0],
-  [[Variable,Description,,Position
-string,A Short String Variable,,1
-,Format: A8,,
-,Measure: Nominal,,
-,Display Alignment: Left,,
-,Display Width: 8,,
-,"Missing Values: ""3333    """,,
-,1111    ,ones,
-,2222    ,twos,
-,3333    ,threes,
-longstring,A Long String Variable,,2
-,Format: A12,,
-,Measure: Nominal,,
-,Display Alignment: Left,,
-,Display Width: 12,,
-numeric,A Numeric Variable,,3
-,Format: F10.0,,
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-,Missing Values: 9; 5; 999,,
-,1,Unity,
-,2,Duality,
-,3,Thripality,
-,Custom attributes:,,
-,size,large,
-,nationality,foreign,
-,colour[1],blue,
-,colour[2],pink,
-,colour[3],violet,
-date,A Date Variable,,4
-,Format: DATE11,,
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-dollar,A Dollar Variable,,5
-,Format: DOLLAR11.2,,
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-datetime,A Datetime Variable,,6
-,Format: DATETIME17.0,,
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
+  [[Variable,Description,Position
+string,"Label: A Short String Variable
+Format: A8
+Missing Values: ""3333    ""
+
+Value,Label
+1111    ,ones
+2222    ,twos
+3333    ,threes",1
+longstring,"Label: A Long String Variable
+Format: A12",2
+numeric,"Label: A Numeric Variable
+Format: F10.0
+Missing Values: 9; 5; 999
+
+Value,Label
+1,Unity
+2,Duality
+3,Thripality
+
+Attribute,Value
+colour[1],blue
+colour[2],pink
+colour[3],violet
+nationality,foreign
+size,large",3
+date,"Label: A Date Variable
+Format: DATE11",4
+dollar,"Label: A Dollar Variable
+Format: DOLLAR11.2",5
+datetime,"Label: A Datetime Variable
+Format: DATETIME17.0",6
 
 Table: Data List
 string,longstring,numeric,date,dollar,datetime
@@ -506,51 +476,38 @@ string,longstring,numeric,date,dollar,datetime
 .       ,.           ,.,.,.  ,.
 5555    ,Five        ,5,05-MAY-2005,$5.00,05-MAY-2005 05:05
 
-Variable,Description,,Position
-string,A Short String Variable,,1
-,Format: A8,,
-,Measure: Nominal,,
-,Display Alignment: Left,,
-,Display Width: 8,,
-,"Missing Values: ""3333    """,,
-,1111    ,ones,
-,2222    ,twos,
-,3333    ,threes,
-longstring,A Long String Variable,,2
-,Format: A12,,
-,Measure: Nominal,,
-,Display Alignment: Left,,
-,Display Width: 12,,
-numeric,A Numeric Variable,,3
-,Format: F10.0,,
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-,Missing Values: 9; 5; 999,,
-,1,Unity,
-,2,Duality,
-,3,Thripality,
-,Custom attributes:,,
-,size,large,
-,nationality,foreign,
-,colour[1],blue,
-,colour[2],pink,
-,colour[3],violet,
-date,A Date Variable,,4
-,Format: DATE11,,
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-dollar,A Dollar Variable,,5
-,Format: DOLLAR11.2,,
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
-datetime,A Datetime Variable,,6
-,Format: DATETIME17.0,,
-,Measure: Scale,,
-,Display Alignment: Right,,
-,Display Width: 8,,
+Variable,Description,Position
+string,"Label: A Short String Variable
+Format: A8
+Missing Values: ""3333    ""
+
+Value,Label
+1111    ,ones
+2222    ,twos
+3333    ,threes",1
+longstring,"Label: A Long String Variable
+Format: A12",2
+numeric,"Label: A Numeric Variable
+Format: F10.0
+Missing Values: 9; 5; 999
+
+Value,Label
+1,Unity
+2,Duality
+3,Thripality
+
+Attribute,Value
+colour[1],blue
+colour[2],pink
+colour[3],violet
+nationality,foreign
+size,large",3
+date,"Label: A Date Variable
+Format: DATE11",4
+dollar,"Label: A Dollar Variable
+Format: DOLLAR11.2",5
+datetime,"Label: A Datetime Variable
+Format: DATETIME17.0",6
 
 Table: Data List
 string,longstring,numeric,date,dollar,datetime
@@ -614,7 +571,7 @@ AT_DATA([test.pl],
     print $PSPP::errstr, "\n";
 ]])
 AT_CHECK([RUN_PERL_MODULE test.pl], [0],
-  [[Error opening `no-such-file.sav' for reading as a system file: No such file or directory.
+  [[An error occurred while opening `no-such-file.sav': No such file or directory.
 ]],
   [[Name "PSPP::errstr" used only once: possible typo at test.pl line 8.
 ]])
@@ -682,7 +639,7 @@ AT_DATA([test.pl],
 
     my $attr = $var->get_attributes ();
 
-    foreach my $k (keys %$attr)
+    foreach my $k (sort (keys (%$attr)))
     {
        my $ll = $attr->{$k};
        print "$k =>";
@@ -690,7 +647,8 @@ AT_DATA([test.pl],
     }
 ]])
 AT_CHECK([RUN_PERL_MODULE test.pl], [0],
-  [[colour =>blue, pink, violet
+  [[$@Role =>0
+colour =>blue, pink, violet
 nationality =>foreign
 size =>large
 ]])
@@ -701,7 +659,7 @@ AT_SKIP_IF([test "$WITH_PERL_MODULE" = no])
 # Skip this test if Perl's Text::Diff module is not installed.
 AT_CHECK([perl -MText::Diff -e '' || exit 77])
 AT_CHECK([RUN_PERL_MODULE $abs_top_builddir/perl-module/t/Pspp.t], [0],
-  [[1..36
+  [[1..37
 ok 1 - use PSPP;
 ok 2 - Dictionary Creation
 ok 3
@@ -739,15 +697,6 @@ ok 33 - Missing Value Positive
 ok 34 - Missing Value Positive SYS
 ok 35 - Missing Value Positive Num
 ok 36 - Custom Attributes
-]],
-  [[# @&t@
-# @@ -0,0 +1 @@
-# +
-# @@ -0,0 +1 @@
-# +
-# @@ -0,0 +1 @@
-# +
-# @@ -0,0 +1 @@
-# +
-]])
+ok 37 - Case count
+]],[ignore])
 AT_CLEANUP