Commit | Line | Data |
4dee0fd3 |
1 | use strict; |
2 | use warnings; |
3 | |
4 | use Test::More; |
5 | |
f8379d02 |
6 | use Test::Requires { |
7 | 'Test::Pod::Coverage' => '1.04', # skip all if not installed |
8 | }; |
4dee0fd3 |
9 | |
7a4a3b1e |
10 | # This is a stripped down version of all_pod_coverage_ok which lets us |
11 | # vary the trustme parameter per module. |
12 | my @modules = all_modules(); |
13 | plan tests => scalar @modules; |
4dee0fd3 |
14 | |
7ce70009 |
15 | my %trustme = ( |
16 | 'MooseX::ClassAttribute' => [ 'init_meta', 'class_has' ], |
4cbcd0f0 |
17 | 'MooseX::ClassAttribute::Meta::Role::Attribute' => ['new'], |
7ce70009 |
18 | 'MooseX::ClassAttribute::Trait::Class' => |
19 | ['compute_all_applicable_class_attributes'], |
4cbcd0f0 |
20 | 'MooseX::ClassAttribute::Trait::Mixin::HasClassAttributes' => [ |
21 | qw( add_class_attribute get_class_attribute_map remove_class_attribute ) |
22 | ], |
7ce70009 |
23 | ); |
24 | |
25 | for my $module ( sort @modules ) { |
7a4a3b1e |
26 | my $trustme; |
27 | |
7ce70009 |
28 | if ( $trustme{$module} ) { |
5761254f |
29 | my $methods = join '|', @{ $trustme{$module} }; |
7ce70009 |
30 | $trustme = [qr/^(?:$methods)/]; |
7a4a3b1e |
31 | } |
4dee0fd3 |
32 | |
7ce70009 |
33 | pod_coverage_ok( |
34 | $module, { trustme => $trustme }, |
35 | "Pod coverage for $module" |
36 | ); |
7a4a3b1e |
37 | } |