This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade Module-Metadata from version 1.000022 to 1.000023
[perl5.git] / cpan / Module-Metadata / t / contains_pod.t
1 use strict;
2 use warnings;
3 use Test::More tests => 3;
4 use Module::Metadata;
5
6 BEGIN {
7   *fh_from_string = $] < 5.008
8     ? require IO::Scalar && sub ($) {
9       IO::Scalar->new(\$_[0]);
10     }
11     # hide in n eval'd string so Perl::MinimumVersion doesn't clutch its pearls
12     : eval <<'EVAL'
13     sub ($) {
14       open my $fh, '<', \$_[0];
15       $fh
16     }
17 EVAL
18   ;
19 }
20
21 {
22     my $src = <<'...';
23 package Foo;
24 1;
25 ...
26
27     my $fh = fh_from_string($src);
28     my $module = Module::Metadata->new_from_handle($fh, 'Foo.pm');
29     ok(!$module->contains_pod(), 'This module does not contains POD');
30 }
31
32 {
33     my $src = <<'...';
34 package Foo;
35 1;
36
37 =head1 NAME
38
39 Foo - bar
40 ...
41
42     my $fh = fh_from_string($src);
43     my $module = Module::Metadata->new_from_handle($fh, 'Foo.pm');
44     ok($module->contains_pod(), 'This module contains POD');
45 }
46
47 {
48     my $src = <<'...';
49 package Foo;
50 1;
51
52 =head1 NAME
53
54 Foo - bar
55
56 =head1 AUTHORS
57
58 Tokuhiro Matsuno
59 ...
60
61     my $fh = fh_from_string($src);
62     my $module = Module::Metadata->new_from_handle($fh, 'Foo.pm');
63     ok($module->contains_pod(), 'This module contains POD');
64 }