summaryrefslogtreecommitdiffstats
path: root/gnu/usr.bin/perl/cpan/Module-Metadata/t
diff options
context:
space:
mode:
authorafresh1 <afresh1@openbsd.org>2019-02-13 21:15:00 +0000
committerafresh1 <afresh1@openbsd.org>2019-02-13 21:15:00 +0000
commit9f11ffb7133c203312a01e4b986886bc88c7d74b (patch)
tree6618511204c614b20256e4ef9dea39a7b311d638 /gnu/usr.bin/perl/cpan/Module-Metadata/t
parentImport perl-5.28.1 (diff)
downloadwireguard-openbsd-9f11ffb7133c203312a01e4b986886bc88c7d74b.tar.xz
wireguard-openbsd-9f11ffb7133c203312a01e4b986886bc88c7d74b.zip
Fix merge issues, remove excess files - match perl-5.28.1 dist
looking good sthen@, Great! bluhm@
Diffstat (limited to 'gnu/usr.bin/perl/cpan/Module-Metadata/t')
-rw-r--r--gnu/usr.bin/perl/cpan/Module-Metadata/t/contains_pod.t2
-rw-r--r--gnu/usr.bin/perl/cpan/Module-Metadata/t/metadata.t57
2 files changed, 55 insertions, 4 deletions
diff --git a/gnu/usr.bin/perl/cpan/Module-Metadata/t/contains_pod.t b/gnu/usr.bin/perl/cpan/Module-Metadata/t/contains_pod.t
index 016e7844ade..d2b7c501d3d 100644
--- a/gnu/usr.bin/perl/cpan/Module-Metadata/t/contains_pod.t
+++ b/gnu/usr.bin/perl/cpan/Module-Metadata/t/contains_pod.t
@@ -4,7 +4,7 @@ use Test::More tests => 3;
use Module::Metadata;
BEGIN {
- *fh_from_string = $] < 5.008
+ *fh_from_string = "$]" < 5.008
? require IO::Scalar && sub ($) {
IO::Scalar->new(\$_[0]);
}
diff --git a/gnu/usr.bin/perl/cpan/Module-Metadata/t/metadata.t b/gnu/usr.bin/perl/cpan/Module-Metadata/t/metadata.t
index 068a8657b15..5dee700bbc6 100644
--- a/gnu/usr.bin/perl/cpan/Module-Metadata/t/metadata.t
+++ b/gnu/usr.bin/perl/cpan/Module-Metadata/t/metadata.t
@@ -10,9 +10,8 @@ use File::Temp;
use File::Basename;
use Cwd ();
use File::Path;
-use Data::Dumper;
-plan tests => 61;
+plan tests => 70;
require_ok('Module::Metadata');
@@ -205,12 +204,17 @@ $::VERSION = 0.01;
my ( $i, $n ) = ( 1, scalar( @scripts ) );
foreach my $script ( @scripts ) {
+ note '-------';
+ my $errs;
my $file = File::Spec->catfile('bin', 'simple.plx');
my ($dist_name, $dist_dir) = new_dist(files => { $file => $script } );
my $pm_info = Module::Metadata->new_from_file( $file );
- is( $pm_info->version, '0.01', "correct script version ($i of $n)" );
+ is( $pm_info->name, 'main', 'name for script is always main');
+ is( $pm_info->version, '0.01', "correct script version ($i of $n)" ) or $errs++;
$i++;
+
+ diag 'parsed module: ', explain($pm_info) if !$ENV{PERL_CORE} && $errs;
}
{
@@ -324,6 +328,53 @@ our $VERSION = '1.23';
is( $pm_info->version, '1.23', 'version for default package' );
}
+my $tmpdir = GeneratePackage::tmpdir();
+my $undef;
+my $test_num = 0;
+use lib 't/lib';
+use GeneratePackage;
+
+{
+ # and now a real pod file
+ # (this test case is ready to be rolled into a corpus loop, later)
+ my $test_case = {
+ name => 'file only contains pod',
+ filename => 'Simple/Documentation.pod',
+ code => <<'---',
+# PODNAME: Simple::Documentation
+# ABSTRACT: My documentation
+
+=pod
+
+Hello, this is pod.
+
+=cut
+---
+ module => '', # TODO: should probably be $undef actually
+ all_versions => { },
+ };
+
+ note $test_case->{name};
+ my $code = $test_case->{code};
+ my $expected_name = $test_case->{module};
+ local $TODO = $test_case->{TODO};
+
+ my $errs;
+
+ my ($vol, $dir, $basename) = File::Spec->splitpath(File::Spec->catfile($tmpdir, "Simple${test_num}", ($test_case->{filename} || 'Simple.pm')));
+ my $pm_info = Module::Metadata->new_from_file(generate_file($dir, $basename, $code));
+
+ my $got_name = $pm_info->name;
+ is(
+ $got_name,
+ $expected_name,
+ "case '$test_case->{name}': module name matches",
+ )
+ or $errs++;
+
+ diag 'parsed module: ', explain($pm_info) if !$ENV{PERL_CORE} && $errs;
+}
+
{
# Make sure processing stops after __DATA__
my $file = File::Spec->catfile('lib', 'Simple.pm');