#!perl
# This file was automatically generated by Dist::Zilla::Plugin::Test::Pod::Coverage::Configurable.

use Test::Pod::Coverage 1.08;
use Test::More 0.88;

BEGIN {
    if ( $] <= 5.008008 ) {
        plan skip_all => 'These tests require Pod::Coverage::TrustPod, which only works with Perl 5.8.9+';
    }
}
use Pod::Coverage::TrustPod;

my %skip = map { $_ => 1 } qw(  );

my @modules;
for my $module ( all_modules() ) {
    next if $skip{$module};

    push @modules, $module;
}

plan skip_all => 'All the modules we found were excluded from POD coverage test.'
    unless @modules;

plan tests => scalar @modules;

my %trustme = (
             'MooseX::ClassAttribute' => [
                                         qr/^init_meta$/,
                                         qr/^class_has$/
                                       ],
             'MooseX::ClassAttribute::Trait::Role' => [
                                                      qr/^composition_class_roles$/
                                                    ],
             'MooseX::ClassAttribute::Trait::Mixin::HasClassAttributes' => [
                                                                           qr/^add_class_attribute$/,
                                                                           qr/^get_class_attribute_map$/,
                                                                           qr/^remove_class_attribute$/
                                                                         ],
             'MooseX::ClassAttribute::Trait::Class' => [
                                                       qr/^compute_all_applicable_class_attributes$/
                                                     ],
             'MooseX::ClassAttribute::Meta::Role::Attribute' => [
                                                                qr/^new$/
                                                              ]
           );

my @also_private;

for my $module ( sort @modules ) {
    pod_coverage_ok(
        $module,
        {
            coverage_class => 'Pod::Coverage::TrustPod',
            also_private   => \@also_private,
            trustme        => $trustme{$module} || [],
        },
        "pod coverage for $module"
    );
}

done_testing();
