pspp-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: perl module documentation patches, segfault


From: Ben Pfaff
Subject: Re: perl module documentation patches, segfault
Date: Sun, 01 Feb 2009 19:09:07 -0800
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.2 (gnu/linux)

John Darrington <address@hidden> writes:

> On Sun, Feb 01, 2009 at 02:50:01PM -0800, Ben Pfaff wrote:
>      I noticed that the Perl module documentation doesn't say how to
>      tell how you've arrived at the end of the dictionary.  It seems
>      that get_var() returns undef in this case, thus:
>      
>      diff --git a/perl-module/lib/PSPP.pm b/perl-module/lib/PSPP.pm
>      --- a/perl-module/lib/PSPP.pm
>      +++ b/perl-module/lib/PSPP.pm
>      @@ -90,6 +90,8 @@ sub new
>       =head3 get_var ($idx)
>       
>       Returns the C<idx>th variable from the dictionary.
>      +Returns undef if C<idx> is greater than or equal to the number
>      +of variables in the dictionary.
>       
>       =cut
>
> You're right.  Feel free to commit that.     

It seems that my real issue was that get_var_cnt() was available
but not documented (and so I didn't notice that it was
available).

Any comments on this commit?

commit 56deaed8bc467c5cb6f47a106b274f354efef225
Author: Ben Pfaff <address@hidden>
Date:   Sun Feb 1 19:06:52 2009 -0800

    perl-module: Document and test PSPP::Dict::get_var_cnt().
    
    This function was present but not documented or tested.

diff --git a/perl-module/lib/PSPP.pm b/perl-module/lib/PSPP.pm
index e9e3215..2957abb 100644
--- a/perl-module/lib/PSPP.pm
+++ b/perl-module/lib/PSPP.pm
@@ -87,6 +87,10 @@ sub new
 
 =pod
 
+=head3 get_var_cnt ()
+
+Returns the number of variables in the dictionary.
+
 =head3 get_var ($idx)
 
 Returns the C<idx>th variable from the dictionary.
diff --git a/perl-module/t/Pspp.t b/perl-module/t/Pspp.t
index 030a342..04b76a5 100644
--- a/perl-module/t/Pspp.t
+++ b/perl-module/t/Pspp.t
@@ -6,7 +6,7 @@
 
 # change 'tests => 1' to 'tests => last_test_to_print';
 
-use Test::More tests => 32;
+use Test::More tests => 37;
 use Text::Diff;
 use File::Temp qw/ tempfile tempdir /;
 BEGIN { use_ok('PSPP') };
@@ -67,6 +67,7 @@ sub run_pspp_syntax_cmp
 {
   my $d = PSPP::Dict->new();
   ok (ref $d, "Dictionary Creation");
+  ok ($d->get_var_cnt () == 0);
 
   $d->set_label ("My Dictionary");
   $d->set_documents ("These Documents");
@@ -75,17 +76,21 @@ sub run_pspp_syntax_cmp
 
   my $var0 = PSPP::Var->new ($d, "le");
   ok (!ref $var0, "Trap illegal variable name");
+  ok ($d->get_var_cnt () == 0);
 
   $var0 = PSPP::Var->new ($d, "legal");
   ok (ref $var0, "Accept legal variable name");
+  ok ($d->get_var_cnt () == 1);
 
   my $var1 = PSPP::Var->new ($d, "legal");
   ok (!ref $var1, "Trap duplicate variable name");
+  ok ($d->get_var_cnt () == 1);
 
   $var1 = PSPP::Var->new ($d, "money", 
                          (fmt=>PSPP::Fmt::DOLLAR, 
                           width=>4, decimals=>2) );
   ok (ref $var1, "Accept valid format");
+  ok ($d->get_var_cnt () == 2);
 
   $d->set_weight ($var1);
 

-- 
"To the engineer, the world is a toy box full of sub-optimized and
 feature-poor toys."
--Scott Adams




reply via email to

[Prev in Thread] Current Thread [Next in Thread]