docs for CMOP::Method::Constructor
[gitmo/Class-MOP.git] / xt / pod_coverage.t
CommitLineData
9f32bdd8 1#!/usr/bin/perl
2
3use strict;
4use warnings;
5
6use Test::More;
7
8eval "use Test::Pod::Coverage 1.04";
9plan 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.
13my @modules = all_modules();
14plan tests => scalar @modules;
15
16my %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 ],
1407d471 48
49 'Class::MOP::Immutable' => [
50 qw( create_immutable_metaclass
51 create_methods_for_immutable_metaclass
52 make_metaclass_immutable
53 make_metaclass_mutable )
54 ],
20315887 55
56 'Class::MOP::Instance' => [
57 qw( BUILDARGS
58 bless_instance_structure
59 is_dependent_on_superclasses ),
60 ],
806f6da4 61
62 'Class::MOP::Method::Accessor' => [
63 qw( generate_accessor_method
64 generate_accessor_method_inline
65 generate_clearer_method
66 generate_clearer_method_inline
67 generate_predicate_method
68 generate_predicate_method_inline
69 generate_reader_method
70 generate_reader_method_inline
71 generate_writer_method
72 generate_writer_method_inline
73 initialize_body
74 )
75 ],
6c5673fc 76
77 'Class::MOP::Method::Accessor' => [
78 qw( attributes
79 generate_constructor_method
80 generate_constructor_method_inline
81 initialize_body
82 meta_instance
83 )
84 ],
9f32bdd8 85);
86
87for my $module ( sort @modules ) {
88 my $trustme = [];
89 if ( $trustme{$module} ) {
90 my $methods = join '|', @{ $trustme{$module} };
91 $trustme = [qr/$methods/];
92 }
93
94 pod_coverage_ok(
95 $module, { trustme => $trustme },
96 "Pod coverage for $module"
97 );
98}