No need to be so fancy
[gitmo/MooseX-ClassAttribute.git] / t / pod-coverage.t
CommitLineData
4dee0fd3 1use strict;
2use warnings;
3
4use Test::More;
5
a6527818 6plan skip_all => 'This test is only run for the module author'
7 unless -d '.svn' || $ENV{IS_MAINTAINER};
8
7a4a3b1e 9eval "use Test::Pod::Coverage 1.04";
a6527818 10plan skip_all => "Test::Pod::Coverage 1.04 required for testing POD coverage"
11 if $@;
4dee0fd3 12
7a4a3b1e 13# This is a stripped down version of all_pod_coverage_ok which lets us
14# vary the trustme parameter per module.
15my @modules = all_modules();
16plan tests => scalar @modules;
4dee0fd3 17
7a4a3b1e 18my %trustme =
19 ( 'MooseX::ClassAttribute' => [ 'init_meta', 'class_has' ],
5761254f 20 'MooseX::ClassAttribute::Meta::Method::Accessor' => [ '.+' ]
7a4a3b1e 21 );
22
23for my $module ( sort @modules )
24{
25 my $trustme;
26
27 if ( $trustme{$module} )
28 {
5761254f 29 my $methods = join '|', @{ $trustme{$module} };
30 $trustme = [ qr/^(?:$methods)/ ];
7a4a3b1e 31 }
4dee0fd3 32
7a4a3b1e 33 pod_coverage_ok( $module, { trustme => $trustme },
34 "Pod coverage for $module"
35 );
36}