On Tuesday 15 January 2008 00:15:04 Ovid wrote: > If alternate TAP producers don't want to implent die/bail on fail, so > what? As long as they aren't producing incompatible TAP, it's OK TO > HAVE DIFFERENT FEATURES.
People who add an environment variable specific to the Perl 5 version of this new T::B workalike to their command line will not be pleasantly surprised when tests written in different languages or with different backends fail to produce the desired behavior. Do you want to be in the business of explaining why this option works only sometimes for people who are merely running the tests, not writing the tests? To forestall the rebuttal of "Well people shouldn't know these details!", consider how easy it is to hide features from people when you ship the source code and talk about the features in public on archived mailing lists searchable the world over. Now consider how much less you have to explain if you stick this feature where it belongs, in a harness program. Suddenly it works for all TAP producers no matter how they produce TAP and you don't have to explain the internals of how they produce TAP to explain why this feature mysteriously fails sometimes, because it doesn't mysteriously fail sometimes. What do you get out of die/bail on fail that justifies breaking the encapsulation of the feature so badly? -- c