On Mon, Feb 11, 2002 at 01:06:28AM +0000, Mark Fowler wrote:
> On Mon, 4 Feb 2002, Michael G Schwern wrote:
>
> > Hmmmm... I thought about the no_ending() problem and basically you
> > need to be able to access the internal list of test results and muck
> > with it to erase the results of the captured tests.
> >
> > I'll put something in for that.
>
> Excellent, that shouldn't be to difficult to add in T::B::T. This
> shouldn't change the API, and it'd make most sense to check what version
> of Test::Builder they have installed and frob the internal list if we can,
> otherwise just default to calling no_ending. Of course, if you distribute
> it with Test::Builder then we don't need to do that (as we know they have
> a capable T::B)
>
> Speaking of that, I was wondering if you're going to distribute
> Test::Builder::Tester with Test::Builder, then it might make more sense
> that you take over maintenance of the module from that point on (so that
> everything is maintained and checked from one position.)
Oh goody, more work. ;)
I've got to think a bit about how I'm going to make the internal
results accessable.
> Anyway, meanwhile, I've been working on my test suite for GD images, and
> this means that I've got to try out Test::Builder::Tester a bit more.
>
> I soon got tired of having to manually insert line numbers into text I'm
> passing to test_err, so I've added an extra function to
> Test::Builder::Tester called line_num that (via caller) simply returns
> what line you called from plus an offset. i.e.
>
> test_out("not ok 1 - foo");
> test_err("# Failed test ($0 at line ".line_num(+1).")");
> fail("foo");
> test_test("fail works");
>
> This is now available at the same URL as before....
>
> http://2shortplanks.com/temp/tbt/
>
> If there's a better way of doing this then let me know.
>
> Finally, speaking of the standard error messages that Test::Builder
> prints out: How stable are these?
Most of them are pretty stable, with the possible exception of
can_ok(). There's no guarantee they won't change, though.
> If T::B::T is testing for them then
> it might make sense to have a function that does something like
>
> test_out("not ok 1 - foo");
> test_err(fail_line(+1))
> fail("foo");
> test_test("fail works");
>
> This way if you ever change the message Test::Builder prints out for
> a standard line failure, all the test frameworks built with T::B::T
> won't break.
>
> Oh look, it's 1am again and I'm babbling.
--
Michael G. Schwern <[EMAIL PROTECTED]> http://www.pobox.com/~schwern/
Perl Quality Assurance <[EMAIL PROTECTED]> Kwalitee Is Job One
Do you actually think about what you are saying or is it an improvisational
game of Mad Libs that you play in your head?