David E. Wheeler wrote:
> On Feb 18, 2009, at 2:04 PM, David E. Wheeler wrote:
> 
>> Of course if I use -v, it passes `verbosity => 1` to TAP::Harness, but
>> I'd love to be able to see the failure diagnostics without having to
>> see all of the passing test TAP output, too. Is there some way to get
>> TAP::Harness to pass through diagnostic output even when `verbosity <
>> 1`? If not, how difficult would it be to add it? Maybe another
>> parameter to new()?
> 
> Looking at the TAP::Harness docs, I'm thinking that output of
> diagnostics should be a part of "normal" verbosity, if for no other
> reason than that all us Perl hackers are used to seeing it show up
> anyway, even if it is in STDERR. No?

No.

Sending comments to STDOUT has been the standard way of hiding comments from
the user for a long time.  If we started displaying them by default, suddenly
silently passing tests would start spewing all sorts of random junk violating
the axiom that passing tests should be quiet.

The thing which most takes advantage of this is TODO tests.  They send their
failure diagnostics to STDOUT so the user is not spammed with passing test
information.

That said, a "show me the comments" switch for TAP::Parser would be handy.

The real underlying problem is, as far as TAP is concerned, there are no
"failure diagnostics" there are just free form comments.  It can't tell what
comment is part of a failure and what comment is additional information and
what comment is just a comment.

Formalized diagnostics solve the problem of allowing structured diagnostics
associated with a test, but they don't solve the more general problem of how
to display informative, free-form output to the user.

One proposed solution is the TAP logging syntax, but it wasn't discussed at
the TAP summit in Oslo last year.  It's status is in limbo.
http://testanything.org/wiki/index.php/TAP_logging_syntax


-- 
Don't try the paranormal until you know what's normal.
    -- "Lords and Ladies" by Terry Prachett

Reply via email to