Boost logo

Boost :

From: Beman Dawes (beman_at_[hidden])
Date: 2000-12-01 11:50:19

A preliminary Test Tools Library has been uploaded at

The real objective is to start regression run testing the boost libraries
in addition to the current compile testing.

I'm proposing boost use the simplest testing protocol; successful tests
return 0 while unsuccessful tests return non-zero.

Developers would be free to meet that protocol in any way.

The Test Tools library supplies a standard main() to catch exceptions,
and/or a couple of macros to facilitate actual value testing. Boost
developers don't have to use Test Tools; they are just a convenient way to
meet the protocol.

Here is the example from the docs:

   #include <boost/main.hpp>
   #include <boost/test_tools.hpp>

   int add( int i, int j ) { return i+j; }

   int test_main( int argc, char * argv[] ) // note the name!
     // four ways to detect and report the same error:
     BOOST_TEST_VERIFY( add(2,2) == 4 ); // #1 continues on error
     BOOST_TEST_ASSERT( add(2,2) == 4 ); // #2 throws on error
     if ( add(2,2) != 4 ) throw "Oops..."; // #3 throws on error
     return add(2,2) == 4 ? 0 : 1; // #4 returns error directly

#1 and #2 output error messages displaying the failed expression, the file
name, and the line number. In all cases, main() outputs an overall status



Boost list run by bdawes at, gregod at, cpdaniel at, john at