Hey guys, sorry to be long in getting back to this.  My project here
at work heated up quite a bit and I've been running around trying to
make sure it's all under control.  Sounds like you guys were all off
in Oslo having too much fun to respond anyways. :-)


chromatic,

>  > And/or, it may make sense to use
>  > deferred plans during development, but switch to numeric plans before
>  > releasing anything to CPAN.
>
>  That's what I do.  I have a pair of Vim macros which toggle my plans.

Between no_plan and plan=>, you mean?  Well, then, sounds like using
defer_plan instead of no_plan could only be an improvement.


Aristotle,

>  Note that it doesn't quite protect you from running too few tests
>  either. You may botch some conditional in your test program and
>  end up skipping tests silently, in which case you will still
>  reach the `all_done()` line, and it'll look as if all was fine.

Fair point.

>  What it protects you from is dying half-way through the tests
>  without the harness noticing. Of course, that's by far the most
>  common failure mode.

Right.


Ovid,

> Conceptually this is fine, but it touches on something chromatic wrote:
>
>   Any solution which requires a human being to read and think
>   about the output beyond "It's all okay!" or "Something fell!"*
>   is not a long-term solution.
>
>  This is a critical point in testing.  Having 'messy' test output is
>  dangerous ...
>
>  As a result, printing "ALL DONE" for tests, while solving one problem,
>  exacerbates another.  I would be extremely leery of anything which
>  increases output I HAVE to read.

Well, in my personal testing, looking at the final line for "ALL DONE"
or not was exactly equivalent to looking at the final line of make
test or prove for "Result: Pass" vs "Result: Fail".  But obviously the
idea behind defer_plan is to _replace_ that (admittedly primitive)
method with something more automated.

>  I'm favorably inclined to introduce a feature like this.

Excellent!

>  How easy it is for that to also allow a specified plan?
>
>   all_done(23);

Trivial.  In fact, I already did it.  I will resubmit my patch with
this enhancement.

And I will try to find some time this week to translate it into a
patch for Test::Builder as well.

Thanx everyone!


         -- Buddy

Reply via email to