On Tue, Dec 07, 2004 at 09:07:36AM -0000, Clayton, Nik wrote:
> There's no way to tell from the first argument whether or not the second
> argument exists.  If it doesn't exist you can't even safely check for its
> existence.
> 
> To give a printf() example, something like this:
> 
>     int n = 42;
>     printf("%d %d\n", n);
> 
> will fail, because you haven't supplied enough arguments.  printf() will
> fail off the end of its argument list and segfault.

Oh yeah.  Ick.


> > I hope you're not emulating Test::More's exit code == # of
> > tests failed "feature" that I'm planning on getting rid of.
> 
> Right now that's exactly what I'm doing.  The test suite for libtap 
> consists of a series of Test::More test files and a series of C files that
> try and test exactly the same thing.
> 
> For each one of these I make sure that the output from libtap is identical
> to the output from Test::More (modulo differences in reporting which 
> file/line a test failed on) and that the exit code is identical.

I would recommend against emulating this feature.  I haven't found it useful
and haven't found anyone who has.  It was put in as a very simple mechanism
to determine if your test failed or not without having to parse the output.
This was back when there was no way to run Test::Harness and programmaticly
get the results.

You might want to throw it in as an option.  I'm going to change Test::More
so it no longer mucks with the exit code by default, you'll have to turn
this feature on.


-- 
Michael G Schwern        [EMAIL PROTECTED]  http://www.pobox.com/~schwern/
If you can't remember, the Claymore is pointed at you.

Reply via email to