tests: Refactor rendering tests.
[pspp] / tests / perl-module.at
index 2be037066c933691e2417758001a09db7e1515ef..0ddd8fd5ff54e698ce8554c3a6ae72dce73bc3fe 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])
 
@@ -56,11 +60,9 @@ DISPLAY DICTIONARY.
 SHOW WEIGHT.
 ])
 AT_CHECK([pspp -O format=csv dump-dict.sps], [0],
-  [File label:
+  [File label: My Dictionary
 
-My Dictionary
-
-Documents in the active file:
+Documents in the active dataset:
 
 These Documents
 
@@ -151,11 +153,9 @@ name,Format: A20,,2
 ,Display Alignment: Left,,
 ,Display Width: 20,,
 
-File label:
-
-This is the file label
+File label: This is the file label
 
-Documents in the active file:
+Documents in the active dataset:
 
 This is a document line
 
@@ -173,11 +173,9 @@ name,Format: A20,,2
 ,Display Alignment: Left,,
 ,Display Width: 20,,
 
-File label:
-
-This is the file label
+File label: This is the file label
 
-Documents in the active file:
+Documents in the active dataset:
 
 This is a document line
 
@@ -239,7 +237,7 @@ DISPLAY DICTIONARY.
 ])
 AT_CHECK([pspp -O format=csv dump-dict.sps], [0],
   [Variable,Description,,Position
-integer,My Integer,,1
+integer,Label: My Integer,,1
 ,Format: F8.0,,
 ,Measure: Scale,,
 ,Display Alignment: Right,,
@@ -248,7 +246,7 @@ integer,My Integer,,1
 ,0,Zero,
 ,1,Unity,
 ,2,Duality,
-string,My String,,2
+string,Label: My String,,2
 ,Format: A8,,
 ,Measure: Nominal,,
 ,Display Alignment: Left,,
@@ -256,7 +254,7 @@ string,My String,,2
 ,"Missing Values: ""this    ""; ""that    """,,
 ,xx      ,foo,
 ,yy      ,bar,
-longstring,My Long String,,3
+longstring,Label: My Long String,,3
 ,Format: A9,,
 ,Measure: Nominal,,
 ,Display Alignment: Left,,
@@ -357,7 +355,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 () )
@@ -372,16 +370,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"
@@ -459,7 +457,7 @@ LIST.
 ])
 AT_CHECK([pspp -O format=csv dump-dicts.sps], [0],
   [[Variable,Description,,Position
-string,A Short String Variable,,1
+string,Label: A Short String Variable,,1
 ,Format: A8,,
 ,Measure: Nominal,,
 ,Display Alignment: Left,,
@@ -468,12 +466,12 @@ string,A Short String Variable,,1
 ,1111    ,ones,
 ,2222    ,twos,
 ,3333    ,threes,
-longstring,A Long String Variable,,2
+longstring,Label: A Long String Variable,,2
 ,Format: A12,,
 ,Measure: Nominal,,
 ,Display Alignment: Left,,
 ,Display Width: 12,,
-numeric,A Numeric Variable,,3
+numeric,Label: A Numeric Variable,,3
 ,Format: F10.0,,
 ,Measure: Scale,,
 ,Display Alignment: Right,,
@@ -483,22 +481,22 @@ numeric,A Numeric Variable,,3
 ,2,Duality,
 ,3,Thripality,
 ,Custom attributes:,,
-,size,large,
-,nationality,foreign,
 ,colour[1],blue,
 ,colour[2],pink,
 ,colour[3],violet,
-date,A Date Variable,,4
+,nationality,foreign,
+,size,large,
+date,Label: A Date Variable,,4
 ,Format: DATE11,,
 ,Measure: Scale,,
 ,Display Alignment: Right,,
 ,Display Width: 8,,
-dollar,A Dollar Variable,,5
+dollar,Label: A Dollar Variable,,5
 ,Format: DOLLAR11.2,,
 ,Measure: Scale,,
 ,Display Alignment: Right,,
 ,Display Width: 8,,
-datetime,A Datetime Variable,,6
+datetime,Label: A Datetime Variable,,6
 ,Format: DATETIME17.0,,
 ,Measure: Scale,,
 ,Display Alignment: Right,,
@@ -513,7 +511,7 @@ 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
+string,Label: A Short String Variable,,1
 ,Format: A8,,
 ,Measure: Nominal,,
 ,Display Alignment: Left,,
@@ -522,12 +520,12 @@ string,A Short String Variable,,1
 ,1111    ,ones,
 ,2222    ,twos,
 ,3333    ,threes,
-longstring,A Long String Variable,,2
+longstring,Label: A Long String Variable,,2
 ,Format: A12,,
 ,Measure: Nominal,,
 ,Display Alignment: Left,,
 ,Display Width: 12,,
-numeric,A Numeric Variable,,3
+numeric,Label: A Numeric Variable,,3
 ,Format: F10.0,,
 ,Measure: Scale,,
 ,Display Alignment: Right,,
@@ -537,22 +535,22 @@ numeric,A Numeric Variable,,3
 ,2,Duality,
 ,3,Thripality,
 ,Custom attributes:,,
-,size,large,
-,nationality,foreign,
 ,colour[1],blue,
 ,colour[2],pink,
 ,colour[3],violet,
-date,A Date Variable,,4
+,nationality,foreign,
+,size,large,
+date,Label: A Date Variable,,4
 ,Format: DATE11,,
 ,Measure: Scale,,
 ,Display Alignment: Right,,
 ,Display Width: 8,,
-dollar,A Dollar Variable,,5
+dollar,Label: A Dollar Variable,,5
 ,Format: DOLLAR11.2,,
 ,Measure: Scale,,
 ,Display Alignment: Right,,
 ,Display Width: 8,,
-datetime,A Datetime Variable,,6
+datetime,Label: A Datetime Variable,,6
 ,Format: DATETIME17.0,,
 ,Measure: Scale,,
 ,Display Alignment: Right,,
@@ -620,7 +618,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.
+  [[Error opening `no-such-file.sav' for reading as a system file: No such file or directory.
 ]],
   [[Name "PSPP::errstr" used only once: possible typo at test.pl line 8.
 ]])
@@ -688,7 +686,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 =>";
@@ -696,7 +694,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
 ]])
@@ -704,8 +703,10 @@ AT_CLEANUP
 
 AT_SETUP([Perl Pspp.t])
 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
@@ -743,15 +744,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