Eric Wilhelm wrote:
> # from Christopher H. Laco
> # on Monday 30 July 2007 11:14 am:
> 
>> I don't agree. What runs when I do 'make test' is up to me, and if I
>> want to litter it up with 'author' tests, then that's my business;
>> right or wrong. Don't like it, then don't use my modules. (I still
>> think all author tests should not run by default...)
> 
> This is not about what happens when *you* do `make test`, it's about 
> what happens when the end-user does `make test`.
> 
> The default module-starter setup creates this t/pod.t
> 
>   #!perl -T
> 
>   use Test::More;
>   eval "use Test::Pod 1.14";
>   plan skip_all => "Test::Pod 1.14 required for testing POD" if $@;
>   all_pod_files_ok();
> 
> If *you* don't have Test::Pod, and *I* do, *I* cannot install your 
> module if the pod doesn't pass.

Oh, duh. *smacks forehead*. I get it. You have it installed, the tests
run, and fail, then you can't install.

I say that's fine. If it fails and you can't install it, then don't.
Arguments about whether the tests should or shouldn't be run [or
included at all] is irrelevant. Tests failed. Don't install. File RT. If
the author made a choice to have them run always and piss people off, or
restrict the user base, then that's the authors prerogative.

Now, I won't argue that it would be better if the author put in a skip
check for TEST_AUTHOR or other variants, but that's up to the author and
not something that should be enforced or needs to be regulated. If I
ship a module and test coverage fails, that's still a bug. The end user
still has no documentation on what the hell the 'naked' method is
supposed to do.

Sure, Test::Pod::Coverage could fail for some reason other than it's
main purpose of checking coverage and finding a naked method, but so
then can Test::More and any other test module.

Failed Tests = Don't Install. Any arguments over what tests failed and
why, or if they should even be run or shipped is moot in my book.

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to