On 01/05/07 21:03 A. Pagaltzis wrote: > I'll never understand why the people who use Module::Install, > which means including M::I with their distros, don't also simply > include all of their non-core testing modules. I mean, once you > start copying modules into your distro, it really makes no > difference whether you include one or twenty.
No, because then it makes the distribution larger than necessary, and often for tests that are irrelevant to whether the program works (e.g. testing the POD or coding style). It's better to have tests that aren't needed be skipped if they aren't installed. No, even better is to skip these tests unless a special environment variable (e.g. DEVEL_TESTS) is set. A related gripe is when in the name of 100% test coverage, I have to wait 20 minutes for the tests to complete. What I care about is testing the weird egde cases related to my platform: things that interact with external libraries, the file system or network, little/big-endian issues, and word sizes, and maybe Perl version quirks. If these work, then I trust that if it passes all the other tests on the author's machine, it would on mine. Likewise, if it fails a test, just stop. Don't continue to run the other 500 test files unless I specifically ask. Even better, if a test fails a known obscure case that I can safely ignore, then it should be marked as a "TODO" test. Because then I can ignore it, rather than waste my time researching whether to it's safe to ignore. Or more likely just not using the module.
