doc revamp for MM::Method::Accessor
[gitmo/Moose.git] / xt / pod_coverage.t
1 #!/usr/bin/perl
2
3 use strict;
4 use warnings;
5
6 use Test::More;
7
8 eval "use Test::Pod::Coverage 1.04";
9 plan skip_all => "Test::Pod::Coverage 1.04 required for testing POD coverage" if $@;
10
11 # This is a stripped down version of all_pod_coverage_ok which lets us
12 # vary the trustme parameter per module.
13 my @modules = all_modules();
14 plan tests => scalar @modules;
15
16 my %trustme = (
17     'Moose'                  => ['make_immutable'],
18     'Moose::Meta::Attribute' => [ 'interpolate_class', 'throw_error' ],
19     'Moose::Meta::Class'     => [
20         qw( check_metaclass_compatibility
21             construct_instance
22             create_error
23             create_immutable_transformer
24             raise_error
25             )
26     ],
27     'Moose::Meta::Method'           => ['throw_error'],
28     'Moose::Meta::Method::Accessor' => [
29         qw( generate_accessor_method
30             generate_accessor_method_inline
31             generate_clearer_method
32             generate_predicate_method
33             generate_reader_method
34             generate_reader_method_inline
35             generate_writer_method
36             generate_writer_method_inline
37             )
38     ],
39     'Moose::Meta::Method::Constructor' =>
40         [qw( initialize_body intialize_body)],
41     'Moose::Meta::Method::Destructor' => ['initialize_body'],
42     'Moose::Role'                     => [
43         qw( after
44             around
45             augment
46             before
47             extends
48             has
49             inner
50             make_immutable
51             override
52             super
53             with )
54     ],
55 );
56
57 for my $module ( sort @modules ) {
58     my $trustme = [];
59     if ( $trustme{$module} ) {
60         my $methods = join '|', @{ $trustme{$module} };
61         $trustme = [qr/^(?:$methods)$/];
62     }
63
64     pod_coverage_ok(
65         $module, { trustme => $trustme },
66         "Pod coverage for $module"
67     );
68 }