use Test;
-BEGIN { plan tests => 4 }
+BEGIN {
+ plan tests => 4;
+ use File::Spec;
+ if ($^O eq 'VMS') {
+ # This magick is needed to make the VMS I/O system to believe
+ # that there's life after eight directory levels (this makes
+ # it believe there's life until sixteen levels). The filesystem
+ # has no limitation as such.
+ $DEFAULT_DIR = $ENV{'DEFAULT'};
+ my $here = $DEFAULT_DIR;
+ my ($dev,$dir) = File::Spec->splitpath($here);
+ $dev =~ s/:$//;
+ $dev = $ENV{$dev} if exists($ENV{$dev});
+ $dev .= ':' if $dev !~ /:/;
+ $here = File::Spec->canonpath($dev.$dir);
+ $here =~ s/\]$/.]/;
+ system "define/nolog/job/trans=conceal temp_perl_base $here";
+ chdir('temp_perl_base:[000000]');
+ }
+}
+
+END {
+ chdir($DEFAULT_DIR) if $^O eq 'VMS';
+ system "deassign/job temp_perl_base";
+}
use Pod::Find qw(pod_find pod_where);
-use File::Spec;
# load successful
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', 'testpods', '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', 'testpods', '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;
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')
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')
- || 'undef - perlfunc.pod not found!';
+print "### searching for Stuff.pod\n";
+my $search = File::Spec->catdir('pod', 'testpods', 'lib', 'Pod');
+$result = pod_where({ -dirs => [$search], -verbose => $VERBOSE }, 'Stuff')
+ || 'undef - Stuff.pod not found!';
print "### found $result\n";
-if ($^O eq 'VMS') { # privlib is perl_root:[lib] unfortunately
- $compare = "/lib/pod/perlfunc.pod";
- $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");
- ok(_canon($result),_canon($compare));
-}
+$compare = File::Spec->catfile('pod', 'testpods', 'lib', 'Pod' ,'Stuff.pod');
+ok(_canon($result),_canon($compare));
# make the path as generic as possible
sub _canon