On Monday 14 January 2008 18:14:54 Adam Kennedy wrote:

> I think we might be mentally going about this wrong.

I'll say.

Running tests or not running tests or ceasing to run tests as they're running 
is *not* T::B's problem.  You cannot solve it reliably at the T::B level.  
You can't even guarantee that the TAP you get comes from T::B, or Perl 5, or 
any version of Perl or a programming language in the entire Perl metaverse, 
or even from something that runs code on the machine where you set the 
environment variable when you launch it and can pay attention to an 
environment variable at all.

This is by design.  This is a feature.  This is why TAP exists.  This is why 
and how the full Parrot test suite, languages and everything, has tests 
written in several different languages and people who run 'make test' do not 
have to care and people who write tests have to care only long enough to 
write (or copy) a two-line harness and a little shim to use the right testing 
library.

Stop looking in T::B for the solution.  It is not there.  It does not belong 
there.

If you want to stop running a long test suite when it produces 1 .. n 
failures, do it in the code that *runs* the test suite.  That, at least, has 
the chance of being at least somewhat reliable, which is sort of a nice 
characteristic in software such as testing libraries and testing harnesses.

I know this is Perl and specifically Perl 5, but that doesn't mean we have to 
pile up fragile hacks with enough corner cases to make MIT Building 38 look 
boring in our documented protocols too.

-- c

Reply via email to