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.
signature.asc
Description: OpenPGP digital signature