Add minimal support for note and explain (i.e. don't crash).


At the request Michael Schwern, do not "require threads" any longer as
it can upset Test::Builder. Anyone using threads should already have
done that themselves. Anyway not, doesn't need it.


Test::Tester::Capgture::new used to just return __PACKAGE__
because Test::Builder::new enforced it's singleton nature by
return __PACKAGE__. That has since changed, Test::Builder::new now
returns a blessed has and around version 0.78, Test::Builder::todo
started wanting to modify $self. To cope with this, we now return
a blessed hash. This is a short-term hack, the correct thing to do
is to detect which style of Test::Builder we're dealing with and
act appropriately.


Some doc clarifications and improvements.


Fixed documentation for run_tests - looks like I copied code for
check_test and didn't alter it correctly. Ricardo Signes pointed out
the errors.

Removed the code and docs related to the $name parameter of run_tests,
it had no effect and a name makes no sense (again a hang over from
factoring this out of check_tests I guess).


Removed a bogus entry for Exporter in @ISA in Test::Tester::Capture
and add a "use Test::Builder". This can cause problems that I can't
reproduce. Thanks to Andres Koenig.


Default to checking depth (check against 1 if none specified). This means
that by default we are checking that the line number/file in failure
messages will be correct.


Fixed a problem due to subroutine argument aliasing which meant the
delegate object could be replaced by the real Test::Builder object.

Test::Tester must be loaded before Test::Builder. Check for this and warn if
it's not true.


Added colourisation support.


Automatically add \n to the expected diagnostics if it's not already there,
because Test::Builder::diag does the same. Thanks to James FitzGibbon for
the suggestion.

Now it's much easier to spot trailing spaces in diagnostics and also
possible to escape all "tricky" characters to make them easy to


The depth calculation would die if it couldn't find the correct things in
the call stack. This seemed like a good idea but it breaks tests which are
triggered in signal handlers. So now the calculation will fail silently.

Using local rather than set/unset for the delegator so that if something
dies, we will drop back to the correct test object.


check_test was getting the Level wrong

Made it all very nice so that don't have to worry about providing capture
objects or any of that messiness. Things are automatically captured once
you're inside one of Test::Tester's testing routines.

Added depth to allow testing $Test::Builder::Level.

Updated the POD a bit.


Spellchecked the POD


Allow getting current_test but still die if someone tries to set it. Needed
for testing Test::Warn::None


Added string length length to the diags diags

Corrected level problem cmp_results


Got rid of undef warning when no name supplied

got rid of unneeded result counting in hceck_test


Can now capture test output in a veriety of ways, although at the moment I'm
only including one way as I think the other way is quite sucky.

added capturing of skip, and todo_skip

big changes resulting in better handling of everything


made the diag comparison output nicer


First release