8 eval "use Test::Pod::Coverage 1.04";
9 plan skip_all => "Test::Pod::Coverage 1.04 required for testing POD coverage" if $@;
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;
17 'Class::MOP' => [ 'HAVE_ISAREV', 'subname', 'in_global_destruction' ],
18 'Class::MOP::Attribute' => ['process_accessors'],
19 'Class::MOP::Class' => [
23 'compute_all_applicable_attributes',
24 'compute_all_applicable_methods',
27 'add_dependent_meta_instance',
28 'add_meta_instance_dependencies',
29 'invalidate_meta_instance',
30 'invalidate_meta_instances',
31 'remove_dependent_meta_instance',
32 'remove_meta_instance_dependencies',
33 'update_meta_instance_dependencies',
35 # effectively internal
36 'check_metaclass_compatibility',
38 'construct_class_instance',
40 'create_meta_instance',
41 'reset_package_cache_flag',
42 'update_package_cache_flag',
44 # doc'd with rebless_instance
45 'rebless_instance_away',
50 'Class::MOP::Class::Immutable::Trait' => ['.+'],
51 'Class::MOP::Class::Immutable::Class::MOP::Class' => ['.+'],
52 'Class::MOP::Deprecated' => ['.+'],
54 'Class::MOP::Instance' => [
56 bless_instance_structure
57 is_dependent_on_superclasses ),
59 'Class::MOP::Instance' => [
61 bless_instance_structure
62 is_dependent_on_superclasses ),
64 'Class::MOP::Method::Accessor' => [
65 qw( generate_accessor_method
66 generate_accessor_method_inline
67 generate_clearer_method
68 generate_clearer_method_inline
69 generate_predicate_method
70 generate_predicate_method_inline
71 generate_reader_method
72 generate_reader_method_inline
73 generate_writer_method
74 generate_writer_method_inline
78 'Class::MOP::Method::Constructor' => [
80 generate_constructor_method
81 generate_constructor_method_inline
87 'Class::MOP::Method::Generated' => [
94 'Class::MOP::Module' => ['create'],
95 'Class::MOP::Package' => [ 'get_method_map', 'wrap_method_body' ],
98 for my $module ( sort @modules ) {
100 if ( $trustme{$module} ) {
101 my $methods = join '|', @{ $trustme{$module} };
102 $trustme = [qr/^(?:$methods)$/];
106 $module, { trustme => $trustme },
107 "Pod coverage for $module"