On Fri, Feb 23, 2001 at 03:21:37AM -0500, [EMAIL PROTECTED] wrote:
> I just noticed t/pod and that its not run with "make test".
> This appears to have come up before and was an oversight.
>
> http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2000-09/msg00730.html
> 
> Looks like people just gave up on fixing t/pod/find.t and I don't
> blame them, its a mess.  I'm tempted to just chuck it and start over.

Yup, I tried turning them on and got a truckload or few of errors,
no one at the time felt like fixing them.

> Well, the fundemental problem is that Pod::Find is doing all sorts of
> gyrations to look at the source code.  This is fundementally
> unmaintainable (tests should not break when we add new files to the
> dist).  Instead, I've added t/pod/test_pods/ to provide a little
> controled sandbox for Pod::Find to play in.
> 
> Could one of the VMS folks look over the VMS specific parts of this
> test and see if they can be eliminated or scaled down?
> 
> Out of curiousity, where did Pod::Find come from?  I can't find it
> anywhere on CPAN yet the test is written as if it was expecting to be
> run as part of a module install, not a core test.
> 
> Here's a patch to fix t/pod/find.t and add t/pod to t/TEST so it will
> run as part of make test.  I've added a t/pod/test_pods directory and
> some dummy files in it for Pod::Find to test against.
> 
> --- t/pod/find.t      2001/02/23 08:07:47     1.1
> +++ t/pod/find.t      2001/02/23 08:08:08
> @@ -14,31 +14,24 @@
>  ok(1);
>  
>  require Cwd;
> -my $THISDIR = Cwd::cwd();
>  my $VERBOSE = 0;
> -my $lib_dir = File::Spec->catdir($THISDIR,'lib');
> +my $lib_dir = File::Spec->catdir('pod', 'test_pods', 'lib');
>  if ($^O eq 'VMS') {
> -    $lib_dir = VMS::Filespec::unixify(File::Spec->catdir($THISDIR,'-','lib','pod'));
> +    $lib_dir = VMS::Filespec::unixify(File::Spec->catdir('pod', 'test_pods', 
>'lib'));
>      $Qlib_dir = $lib_dir;
>      $Qlib_dir =~ s#\/#::#g;
>  }
>  print "### searching $lib_dir\n";
> -my %pods = pod_find("$lib_dir");
> -my $result = join("\n### ", sort values %pods);
> -print "### found $result\n";
> -my $compare = join(',', qw(
> -    Pod::Checker
> -    Pod::Find
> -    Pod::InputObjects
> -    Pod::ParseUtils
> -    Pod::Parser
> -    Pod::PlainText
> -    Pod::Select
> -    Pod::Usage
> +my %pods = pod_find($lib_dir);
> +my $result = join(',', sort values %pods);
> +my $compare = join(',', sort qw(
> +    Pod::Stuff
> +    Pod::Rhubarb
> +    Like::And::Yeah
>  ));
>  if ($^O eq 'VMS') {
>      $compare = lc($compare);
> -    $result = join(',', sort grep(/pod::/, values %pods));
> +    $result = join(',', sort values %pods);
>      my $undollared = $Qlib_dir;
>      $undollared =~ s/\$/\\\$/g;
>      $undollared =~ s/\-/\\\-/g;
> @@ -55,8 +48,6 @@
>      ok($result,$compare);
>  }
>  
> -# File::Find is located in this place since eons
> -# and on all platforms, hopefully
>  
>  print "### searching for File::Find\n";
>  $result = pod_where({ -inc => 1, -verbose => $VERBOSE }, 'File::Find')
> @@ -71,25 +62,24 @@
>      ok($result,$compare);
>  }
>  else {
> -    $compare = File::Spec->catfile($Config::Config{privlib},"File","Find.pm");
> +    $compare = File::Spec->catfile(File::Spec->updir, 'lib','File','Find.pm');
>      ok(_canon($result),_canon($compare));
>  }
>  
>  # Search for a documentation pod rather than a module
>  print "### searching for perlfunc.pod\n";
> -$result = pod_where({ -inc => 1, -verbose => $VERBOSE }, 'perlfunc')
> +my $search = File::Spec->catfile('pod', 'test_pods', 'pod');
> +$result = pod_where({ -dirs => [$search], -verbose => $VERBOSE }, 'perlfoo')
>    || 'undef - perlfunc.pod not found!';
>  print "### found $result\n";
>  
> -if ($^O eq 'VMS') { # privlib is perl_root:[lib] unfortunately
> -    $compare = "/lib/pod/perlfunc.pod";
> +if ($^O eq 'VMS') {
>      $result = VMS::Filespec::unixify($result);
> -    $result =~ s/perl_root\///i;
>      $result =~ s/^\.\.//;  # needed under `mms test`
>      ok($result,$compare);
>  }
>  else {
> -    $compare = File::Spec->catfile($Config::Config{privlib},"perlfunc.pod");
> +    $compare = File::Spec->catfile('pod', 'test_pods', 'pod' ,'perlfunc.pod');
>      ok(_canon($result),_canon($compare));
>  }
>  
> --- /dev/null Tue Dec 12 01:02:04 2000
> +++ t/pod/test_pods/lib/Like/And/Yeah.pm      Fri Feb 23 02:55:13 2001
> @@ -0,0 +1,13 @@
> +package Like::And::Yeah;
> +
> +=head1 Umm
> +
> +Ya know and stuff
> +
> +=head1 Things
> +
> +Things are neat.  And stuff.  Whatever.
> +
> +=head2 Ummm
> +
> +Errr whatever.
> --- /dev/null Tue Dec 12 01:02:04 2000
> +++ t/pod/test_pods/lib/Pod/Rhubarb.pod       Fri Feb 23 02:52:33 2001
> @@ -0,0 +1,15 @@
> +=head1 RHUBARB
> +
> +Rhubarb - rhubarb rhubarb
> +
> +=head1 rhubarb
> +
> +Rhubarb rhubarb rhubarb
> +
> +=over 4
> +
> +=item B<rhubarb>
> +
> +  my $rhubarb = rhubarb($rhubarb, $rhubarb, \%rhubarb);
> +
> +=back
> --- /dev/null Tue Dec 12 01:02:04 2000
> +++ t/pod/test_pods/lib/Pod/Stuff.pm  Fri Feb 23 02:51:18 2001
> @@ -0,0 +1,20 @@
> +=head1 NAME
> +
> +Pod::Stuff - dummy testing pod
> +
> +=head1 DESCRIPTION
> +
> +This isn't really anything, its just some dummy pod code.
> +And stuff.
> +
> +Lots of stuff.
> +
> +=head2 STUFF
> +
> +For all your stuff [tm]
> +
> +Stuffit
> +
> +Mmmm, stuffed pizza bread.
> +
> +=cut
> --- MANIFEST  2001/02/18 18:51:54     1.5
> +++ MANIFEST  2001/02/23 08:16:39
> @@ -1669,6 +1669,10 @@
>  t/pod/testcmp.pl     Module to compare output against expected results
>  t/pod/testp2pt.pl    Module to test Pod::PlainText for a given file
>  t/pod/testpchk.pl    Module to test Pod::Checker for a given file
> +t/pod/test_pods/lib/Like/And/Yeah.pm    Sample data for find.t
> +t/pod/test_pods/lib/Pod/Rhubarb.pod     Sample data for find.t
> +t/pod/test_pods/lib/Pod/Stuff.pm        Sample data for find.t
> +t/pod/test_pods/pod/perlfoo.pod         Sample data for find.t
>  t/pragma/constant.t  See if compile-time constants work
>  t/pragma/diagnostics.t       See if diagnostics.pm works
>  t/pragma/locale.t    See if locale support works
> --- t/TEST    2001/02/23 08:10:52     1.1
> +++ t/TEST    2001/02/23 08:10:58
> @@ -27,7 +27,7 @@
>  
>  if ($#ARGV == -1) {
>      @ARGV = split(/[ \n]/,
> -      `echo base/*.t comp/*.t cmd/*.t run/*.t io/*.t; echo op/*.t pragma/*.t 
>lib/*.t`);
> +      `echo base/*.t comp/*.t cmd/*.t run/*.t io/*.t; echo op/*.t pragma/*.t 
>lib/*.t pod/*.t`);
>  }
>  
>  %infinite = ( 'comp/require.t', 1, 'op/bop.t', 1, 'lib/hostname.t', 1 ); 
> 
> 
> 
> -- 
> Michael G Schwern   <[EMAIL PROTECTED]>   http://www.pobox.com/~schwern/
> Perl6 Quality Assurance     <[EMAIL PROTECTED]>       Kwalitee Is Job One

-- 
$jhi++; # http://www.iki.fi/jhi/
        # There is this special biologist word we use for 'stable'.
        # It is 'dead'. -- Jack Cohen

Reply via email to