This is the same as last
(http://article.gmane.org/gmane.comp.lib.boost.user/10508) except that it
fixes a problem that would prevent a multi-unit auto unit test to run (i.e.
if one of the test files did NOT have a BOOST_AUTO_TEST_MAIN).
$ diff -u boost_1_32_0/boost/test/auto_unit_test.hpp
patches/boost-1_32/boost/test/auto_unit_test.hpp
--- /home/oschoenborn/downloads/boost_1_32_0/boost/test/auto_unit_test.hpp
Mon Jul 19 09:12:40 2004
+++ /c/Boost/include/boost-1_32/boost/test/auto_unit_test.hpp Thu Apr 7
16:16:19 2005
@@ -19,6 +19,17 @@
// Boost.Test
#include
+#define BOOST_AUTO_TEST_SUITE_DEFAULT_NAME "Auto Unit Test"
+#ifdef BOOST_AUTO_TEST_MAIN
+ #ifndef BOOST_AUTO_TEST_SUITE_NAME
+ #define BOOST_AUTO_TEST_SUITE_NAME suiteName(BOOST_AUTO_TEST_MAIN)
+ #endif
+#else
+ #ifndef BOOST_AUTO_TEST_SUITE_NAME
+ #define BOOST_AUTO_TEST_SUITE_NAME BOOST_AUTO_TEST_SUITE_DEFAULT_NAME
+ #endif
+#endif
+
//
**************************************************************************
//
// ************** auto_unit_test_registrar
************** //
//
**************************************************************************
//
@@ -27,10 +38,17 @@
namespace unit_test {
namespace ut_detail {
+inline const char*
+suiteName(const char* name = NULL)
+{
+ return name ? name : BOOST_AUTO_TEST_SUITE_DEFAULT_NAME;
+}
+
inline boost::unit_test::test_suite*
auto_unit_test_suite()
{
- static boost::unit_test::test_suite* inst = BOOST_TEST_SUITE( "Auto
Unit Test" );
+ static boost::unit_test::test_suite* inst
+ = BOOST_TEST_SUITE( BOOST_AUTO_TEST_SUITE_NAME );
return inst;
}