Commit | Line | Data |
9f32bdd8 |
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 | 'Class::MOP::Attribute' => ['process_accessors'], |
c02d53a4 |
18 | 'Class::MOP::Class' => [ |
4054ae31 |
19 | # deprecated |
20 | 'alias_method', |
21 | 'compute_all_applicable_methods', |
22 | |
23 | # unfinished feature |
24 | 'add_dependent_meta_instance', |
25 | 'add_meta_instance_dependencies', |
26 | 'invalidate_meta_instance', |
27 | 'invalidate_meta_instances', |
28 | 'remove_dependent_meta_instance', |
29 | 'remove_meta_instance_dependencies', |
30 | 'update_meta_instance_dependencies', |
31 | |
32 | # effectively internal |
33 | 'check_metaclass_compatibility', |
34 | 'clone_instance', |
35 | 'construct_class_instance', |
36 | 'construct_instance', |
37 | 'create_immutable_transformer', |
38 | 'create_meta_instance', |
39 | 'get_immutable_options', |
40 | 'reset_package_cache_flag', |
41 | 'update_package_cache_flag', |
42 | 'wrap_method_body', |
43 | |
44 | # doc'd under get_all_attributes |
45 | 'compute_all_applicable_attributes', |
46 | |
c02d53a4 |
47 | ], |
fbedcfb3 |
48 | |
49 | 'Class::MOP::Instance' => [ |
50 | qw( BUILDARGS |
51 | bless_instance_structure |
52 | is_dependent_on_superclasses ), |
53 | ], |
54 | |
20315887 |
55 | 'Class::MOP::Instance' => [ |
56 | qw( BUILDARGS |
57 | bless_instance_structure |
58 | is_dependent_on_superclasses ), |
59 | ], |
806f6da4 |
60 | |
fbedcfb3 |
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 |
72 | initialize_body |
73 | ) |
74 | ], |
75 | |
76 | 'Class::MOP::Method::Constructor' => [ |
77 | qw( attributes |
78 | generate_constructor_method |
79 | generate_constructor_method_inline |
80 | initialize_body |
81 | meta_instance |
a18e1521 |
82 | options |
fbedcfb3 |
83 | ) |
84 | ], |
85 | |
86 | 'Class::MOP::Method::Generated' => [ |
87 | qw( new |
88 | definition_context |
89 | is_inline |
90 | initialize_body |
91 | ) |
92 | ], |
93 | |
94 | 'Class::MOP::Module' => ['create'], |
9f32bdd8 |
95 | ); |
96 | |
97 | for my $module ( sort @modules ) { |
98 | my $trustme = []; |
99 | if ( $trustme{$module} ) { |
100 | my $methods = join '|', @{ $trustme{$module} }; |
896dacc0 |
101 | $trustme = [qr/^(?:$methods)$/]; |
9f32bdd8 |
102 | } |
103 | |
104 | pod_coverage_ok( |
105 | $module, { trustme => $trustme }, |
106 | "Pod coverage for $module" |
107 | ); |
108 | } |