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'],
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 'get_immutable_options',
42 'reset_package_cache_flag',
43 'update_package_cache_flag',
46 # doc'd with rebless_instance
47 'rebless_instance_away',
49 'Class::MOP::Class::Immutable::Trait' => ['.+'],
50 'Class::MOP::Class::Immutable::Class::MOP::Class' => ['.+'],
51 'Class::MOP::Instance' => [
53 bless_instance_structure
54 is_dependent_on_superclasses ),
56 'Class::MOP::Instance' => [
58 bless_instance_structure
59 is_dependent_on_superclasses ),
61 'Class::MOP::Method::Accessor' => [
62 qw( generate_accessor_method
63 generate_accessor_method_inline
64 generate_clearer_method
65 generate_clearer_method_inline
66 generate_predicate_method
67 generate_predicate_method_inline
68 generate_reader_method
69 generate_reader_method_inline
70 generate_writer_method
71 generate_writer_method_inline
75 'Class::MOP::Method::Constructor' => [
77 generate_constructor_method
78 generate_constructor_method_inline
84 'Class::MOP::Method::Generated' => [
91 'Class::MOP::Module' => ['create'],
94 for my $module ( sort @modules ) {
96 if ( $trustme{$module} ) {
97 my $methods = join '|', @{ $trustme{$module} };
98 $trustme = [qr/^(?:$methods)$/];
102 $module, { trustme => $trustme },
103 "Pod coverage for $module"