On 1 Nov 2007, at 14:12, Michael Peters wrote:

Andy Armstrong wrote:

Yeah - I slept on it. It should be TSP - Test Steering Protocol. If a
test emits TAP it's a test, if it emits TSP it's a controller. TAP
should stay pure.

Sounds to me like it should just be a custom test harness. If the user needs to dynamically figure out which tests to run, then why not create a custom harness which will do what they need. This way they can have control over not only which files to run, but which routines (if they're using Test::Class), etc, etc. Writing your own harness is trivial now. I'd say writing something to emit a new protocol is no easier than writing a script that picks the test files/subs to run.


Yeah, but from the user's PoV this is pretty easy:

# t/controller.t
use Test::Steering;

include ('xt/frob') if frob_avail();
include ('xt/slow') if all_the_time_in_the_world();

And it's not too hard to support in the harness.

--
Andy Armstrong, Hexten




Reply via email to