http://www.pobox.com/~schwern/src/Test-Simple-0.61.tar.gz or http://svn.schwern.org/CPAN/Test-Simple/trunk or a CPAN mirror near you.
A small raft of small fixes have happened between 0.60 and 0.61 as well as a few new features. New Features: * Test::Builder::Module has been added to help test module authors. It implements the oft requested import() method to parse plan information on the use line just as Test::More does. If you base your testing module on Test::Builder::Module it will no longer need to rely on Test::More to set the plan. * Added the oft requested BAIL_OUT() function to Test::More. * Added a no_diag() method to Test::Builder. * The standard failure diagnostics now include the name of the test for easier recognition when run through Test::Harness. * cmp_ok(), like() and unlike() will now warn if given uninitialized values. * cmp_ok() will now throw warnings if the given comparison warrents it. For example, cmp_ok(2, '==', 'foo') will warn about 'foo' not being numeric. * Test will now report *both* the number of tests failed and if the wrong number of tests was run. Previously if both occured it would only report the latter. * For the purposes of calculating the exit code, missing or extra tests are not considered failures. Should there be no failures but the wrong number of tests the exit code will be 254. Deprecations: * The "no_diag" option to Test::More has been deprecated. Use Test::More->builder->no_diag(1) instead. * Test::Builder->BAILOUT is now BAIL_OUT to match all the other naming conventions. BAILOUT has been deprecated. Bug fixes: * A large number of bugs related to overloaded objects have been fixed. See the change log below for details. 0.61 Fri Sep 23 23:26:05 PDT 2005 - create.t was trying to read from a file before it had been closed (and thus the changes may not have yet been written). * is_deeply() would call stringification methods on non-object strings which happened to be the name of a string overloaded class. [rt.cpan.org 14675] 0.60_02 Tue Aug 9 00:27:41 PDT 2005 * Added Test::Builder::Module. - Changed Test::More and Test::Simple to use Test::Builder::Module - Minor Win32 testing nit in fail-more.t * Added no_diag() method to Test::Builder and changed Test::More's no_diag internals to use that. [rt.cpan.org 8655] * Deprecated no_diag() as an option to "use Test::More". Call the Test::Builder method instead. 0.60_01 Sun Jul 3 18:11:58 PDT 2005 - Moved the docs around a little to better group all the testing functions together. [rt.cpan.org 8388] * Added a BAIL_OUT() function to Test::More [rt.cpan.org 8381] - Changed Test::Builder->BAILOUT to BAIL_OUT to match other method's naming conventions. BAILOUT remains but is deprecated. * Changed the standard failure diagnostics to include the test name. [rt.cpan.org 12490] - is_deeply() was broken for overloaded objects in the top level in 0.59_01. [rt.cpan.org 13506] - String overloaded objects without an 'eq' or '==' method are now handled in cmp_ok() and is(). - cmp_ok() will now treat overloaded objects as numbers if the comparison operator is numeric. [rt.cpan.org 13156] - cmp_ok(), like() and unlike will now throw uninit warnings if their arguments are undefined. [rt.cpan.org 13155] - cmp_ok() will now throw warnings as if the comparison were run normally, for example cmp_ok(2, '==', 'foo') will warn about 'foo' not being numeric. Previously all warnings in the comparison were supressed. [rt.cpan.org 13155] - Tests will now report *both* the number of tests failed and if the wrong number of tests were run. Previously if tests failed and the wrong number were run it would only report the latter. [rt.cpan.org 13494] - Missing or extra tests are not considered failures for the purposes of calculating the exit code. Should there be no failures but the wrong number of tests the exit code will be 254. - Avoiding an unbalanced sort in eq_set() [bugs.perl.org 36354] - Documenting that eq_set() doesn't deal well with refs. - Clarified how is_deeply() compares a bit. * Once again working on 5.4.5. -- Michael G Schwern [EMAIL PROTECTED] http://www.pobox.com/~schwern Insulting our readers is part of our business model. http://somethingpositive.net/sp07122005.shtml