From: Nigel Metheringham Date: Mon, 11 May 2009 13:39:33 +0000 (+0000) Subject: Imported POD/POD::Coverage tests X-Git-Tag: v1.70~150^2~5 X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=13fb11fd7592b0cae0449cbf540d37a54c8834d1;p=dbsrgits%2FSQL-Abstract.git Imported POD/POD::Coverage tests --- diff --git a/t/90pod.t b/t/90pod.t new file mode 100644 index 0000000..ddc2905 --- /dev/null +++ b/t/90pod.t @@ -0,0 +1,6 @@ +use Test::More; + +eval "use Test::Pod 1.14"; +plan skip_all => 'Test::Pod 1.14 required' if $@; + +all_pod_files_ok(); diff --git a/t/91podcoverage.t b/t/91podcoverage.t new file mode 100644 index 0000000..dd3533c --- /dev/null +++ b/t/91podcoverage.t @@ -0,0 +1,49 @@ +use Test::More; + +eval "use Pod::Coverage 0.19"; +plan skip_all => 'Pod::Coverage 0.19 required' if $@; +eval "use Test::Pod::Coverage 1.04"; +plan skip_all => 'Test::Pod::Coverage 1.04 required' if $@; + +plan skip_all => 'set TEST_POD to enable this test' + unless ( $ENV{TEST_POD} || -e 'MANIFEST.SKIP' ); + +my @modules = sort { $a cmp $b } ( Test::Pod::Coverage::all_modules() ); +plan tests => scalar(@modules); + +# Since this is about checking documentation, a little documentation +# of what this is doing might be in order... +# The exceptions structure below is a hash keyed by the module +# name. The value for each is a hash, which contains one or more +# (although currently more than one makes no sense) of the following +# things:- +# skip => a true value means this module is not checked +# ignore => array ref containing list of methods which +# do not need to be documented. +my $exceptions = { + 'SQL::Abstract' => { + ignore => [ + qw/belch + puke/ + ] + }, + 'SQL::Abstract::Test' => { skip => 1 }, +}; + +foreach my $module (@modules) { + SKIP: + { + skip "$module - No user visible methods", + 1 + if ( $exceptions->{$module}{skip} ); + + # build parms up from ignore list + my $parms = {}; + $parms->{trustme} = + [ map { qr/^$_$/ } @{ $exceptions->{$module}{ignore} } ] + if exists( $exceptions->{$module}{ignore} ); + + # run the test with the potentially modified parm set + pod_coverage_ok( $module, $parms, "$module POD coverage" ); + } +}