http://www.perlmonks.org?node_id=1000378

uG has asked for the wisdom of the Perl Monks concerning the following question:

I've been learning how to do basic testing. However i'm hung up on:

use Test::More; eval "use Test::Pod::Coverage 1.00"; plan skip_all => "Test::Pod::Coverage 1.00 required for testing POD co +verage" if $@; all_pod_coverage_ok();

However, it attempts to test my installed version of the module this test is for. So say I have Module/lib/Module.pm and Module/t/pod_coverage.t and I do prove t/pod_coverage.t, it doesn't test Module/lib/Module.pm, it tests /home/user/perl/version/installed_modules/Module.pm which results in a failed test case (if the module wasn't already installed) or a failed test case (because the previous version of the module on cpan shouldn't pass pod_coverage.t like the updated module).

Why isn't all_pod_coverage_ok() checking the current directory's lib directory and instead checks the installed version?

Replies are listed 'Best First'.
Re: Test::Pod::Coverage testing previously installed distro
by tobyink (Canon) on Oct 22, 2012 at 16:41 UTC

    You probably want prove -l, not plain prove.

    perl -E'sub Monkey::do{say$_,for@_,do{($monkey=[caller(0)]->[3])=~s{::}{ }and$monkey}}"Monkey say"->Monkey::do'