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