Beefy Boxes and Bandwidth Generously Provided by pair Networks
"be consistent"
 
PerlMonks  

Test::Pod::Coverage and all_pod_coverage_ok

by geektron (Curate)
on Sep 29, 2005 at 21:53 UTC ( #496259=perlquestion: print w/ replies, xml ) Need Help??
geektron has asked for the wisdom of the Perl Monks concerning the following question:

In my last steps to become a "real tester" I've been throwing in some POD tests to make sure I have all my subs documented. Test::Pod::Coverage is of course the tool of choice, but I think I'm misusing  all_pod_coverage_ok (or  all_modules .

I'm not trying to test a distribution (in the strictest sense of the word), but I am trying to test a collection of database-interaction modules.

my first thought, since this isn't a packaged dist, was to use  all_modules( $dir ); , but that gives me:

[me@2 t]$ prove -v 900_pod_coverage.t 900_pod_coverage....Undefined subroutine &main::all_modules called at +900_pod_coverage.t line 9.
but the code is very straightforward, or so i thought:
# -*- perl -*- # t/900_pod_coverage.t - check POD coverage for new modules use Test::Pod::Coverage; # tests => 1; use lib qw# /home/httpd/path/to/my/plugins/ #; my $dir = q{/home/httpd/path/to/my/plugins/}; ## also tried the commented out ... # my @moduleList = all_modules( 'DataClasses' ); my @moduleList = all_modules( $dir ); foreach my $mod ( @moduleList ) { pod_coverage_ok( $mod, 'reporting code is documented' ); }
I must be missing something obvious. Sure, I could switch over to something like readdir() ... At this point, I want to know if I'm way of the path of the module's intentions, since the perldoc isn't too descriptive.

Comment on Test::Pod::Coverage and all_pod_coverage_ok
Select or Download Code
Re: Test::Pod::Coverage and all_pod_coverage_ok
by ghenry (Vicar) on Sep 29, 2005 at 22:06 UTC

    Update: I've re-read the docs and it says to use $dir

    According to the docs, it's all_modules( [@dirs] )

    Aren't you passing it a $scalar ??

    Also, that error usually means all_modules hasn't been imported, no?

    Walking the road to enlightenment... I found a penguin and a camel on the way.....
    Fancy a yourname@perl.me.uk? Just ask!!!
      yes, i passed it a scalar. and i just passed it an arrayref.

      somehow, all_modules isn't getting imported into the calling space. the error *isn't* that all_modules didn't return anything, it's that all_modules is an undefined sub.

Re: Test::Pod::Coverage and all_pod_coverage_ok
by chromatic (Archbishop) on Sep 29, 2005 at 22:43 UTC

    The module only exports pod_coverage_ok and all_pod_coverage_ok. It should be clearer about that. I'll file a bug.

      well, that does answer the question. thanks!

      i'll just have to find a workaround for now, but that's not difficult. a quick regex like  $mod =~ s/\//::/g; before passing the name into  pod_coverage_ok() should do.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: perlquestion [id://496259]
Approved by Old_Gray_Bear
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (6)
As of 2015-07-04 20:00 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (60 votes), past polls