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'], |
a99a2b8c |
20 | 'MooseX::ClassAttribute::Trait::Role' => |
21 | ['composition_class_roles'], |
4cbcd0f0 |
22 | 'MooseX::ClassAttribute::Trait::Mixin::HasClassAttributes' => [ |
23 | qw( add_class_attribute get_class_attribute_map remove_class_attribute ) |
24 | ], |
7ce70009 |
25 | ); |
26 | |
27 | for my $module ( sort @modules ) { |
7a4a3b1e |
28 | my $trustme; |
29 | |
7ce70009 |
30 | if ( $trustme{$module} ) { |
5761254f |
31 | my $methods = join '|', @{ $trustme{$module} }; |
7ce70009 |
32 | $trustme = [qr/^(?:$methods)/]; |
7a4a3b1e |
33 | } |
4dee0fd3 |
34 | |
7ce70009 |
35 | pod_coverage_ok( |
36 | $module, { trustme => $trustme }, |
37 | "Pod coverage for $module" |
38 | ); |
7a4a3b1e |
39 | } |