Changes to work with (and require) Moose 0.73_01
[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' ],
b64c8efa 20 'MooseX::ClassAttribute::Role::Meta::Class' => [ 'compute_all_applicable_class_attributes' ],
5761254f 21 'MooseX::ClassAttribute::Meta::Method::Accessor' => [ '.+' ]
7a4a3b1e 22 );
23
24for my $module ( sort @modules )
25{
26 my $trustme;
27
28 if ( $trustme{$module} )
29 {
5761254f 30 my $methods = join '|', @{ $trustme{$module} };
31 $trustme = [ qr/^(?:$methods)/ ];
7a4a3b1e 32 }
4dee0fd3 33
7a4a3b1e 34 pod_coverage_ok( $module, { trustme => $trustme },
35 "Pod coverage for $module"
36 );
37}