15 #ifndef BOOST_TEST_UNIT_TEST_SUITE_HPP_071894GER 16 #define BOOST_TEST_UNIT_TEST_SUITE_HPP_071894GER 19 #include <boost/test/unit_test_suite_impl.hpp> 20 #include <boost/test/framework.hpp> 28 #define BOOST_TEST_CASE( test_function ) \ 29 boost::unit_test::make_test_case( boost::unit_test::callback0<>(test_function), BOOST_TEST_STRINGIZE( test_function ) ) 30 #define BOOST_CLASS_TEST_CASE( test_function, tc_instance ) \ 31 boost::unit_test::make_test_case((test_function), BOOST_TEST_STRINGIZE( test_function ), tc_instance ) 37 #define BOOST_TEST_SUITE( testsuite_name ) \ 38 ( new boost::unit_test::test_suite( testsuite_name ) ) 44 #define BOOST_AUTO_TEST_SUITE( suite_name ) \ 45 namespace suite_name { \ 46 BOOST_AUTO_TU_REGISTRAR( suite_name )( BOOST_STRINGIZE( suite_name ) ); \ 53 #define BOOST_FIXTURE_TEST_SUITE( suite_name, F ) \ 54 BOOST_AUTO_TEST_SUITE( suite_name ) \ 55 typedef F BOOST_AUTO_TEST_CASE_FIXTURE; \ 62 #define BOOST_AUTO_TEST_SUITE_END() \ 63 BOOST_AUTO_TU_REGISTRAR( BOOST_JOIN( end_suite, __LINE__ ) )( 1 ); \ 71 #define BOOST_AUTO_TEST_CASE_EXPECTED_FAILURES( test_name, n ) \ 72 struct BOOST_AUTO_TC_UNIQUE_ID( test_name ); \ 74 static struct BOOST_JOIN( test_name, _exp_fail_num_spec ) \ 75 : boost::unit_test::ut_detail:: \ 76 auto_tc_exp_fail<BOOST_AUTO_TC_UNIQUE_ID( test_name ) > \ 78 BOOST_JOIN( test_name, _exp_fail_num_spec )() \ 79 : boost::unit_test::ut_detail:: \ 80 auto_tc_exp_fail<BOOST_AUTO_TC_UNIQUE_ID( test_name ) >( n ) \ 82 } BOOST_JOIN( test_name, _exp_fail_num_spec_inst ); \ 90 #define BOOST_FIXTURE_TEST_CASE( test_name, F ) \ 91 struct test_name : public F { void test_method(); }; \ 93 static void BOOST_AUTO_TC_INVOKER( test_name )() \ 95 BOOST_TEST_CHECKPOINT('"' << #test_name << "\" Fixture entry."); \ 97 BOOST_TEST_CHECKPOINT('"' << #test_name << "\" entry."); \ 99 BOOST_TEST_CHECKPOINT('"' << #test_name << "\" exit."); \ 102 struct BOOST_AUTO_TC_UNIQUE_ID( test_name ) {}; \ 104 BOOST_AUTO_TU_REGISTRAR( test_name )( \ 105 boost::unit_test::make_test_case( \ 106 &BOOST_AUTO_TC_INVOKER( test_name ), #test_name ), \ 107 boost::unit_test::ut_detail::auto_tc_exp_fail< \ 108 BOOST_AUTO_TC_UNIQUE_ID( test_name )>::instance()->value() ); \ 110 void test_name::test_method() \ 117 #define BOOST_AUTO_TEST_CASE( test_name ) \ 118 BOOST_FIXTURE_TEST_CASE( test_name, BOOST_AUTO_TEST_CASE_FIXTURE ) 125 #define BOOST_AUTO_TEST_CASE_TEMPLATE( test_name, type_name, TL ) \ 126 template<typename type_name> \ 127 struct test_name : public BOOST_AUTO_TEST_CASE_FIXTURE \ 128 { void test_method(); }; \ 130 struct BOOST_AUTO_TC_INVOKER( test_name ) { \ 131 template<typename TestType> \ 132 static void run( boost::type<TestType>* = 0 ) \ 134 BOOST_TEST_CHECKPOINT('"' << #test_name << "\" Fixture entry.");\ 135 test_name<TestType> t; \ 136 BOOST_TEST_CHECKPOINT('"' << #test_name << "\" entry."); \ 138 BOOST_TEST_CHECKPOINT('"' << #test_name << "\" exit."); \ 142 BOOST_AUTO_TU_REGISTRAR( test_name )( \ 143 boost::unit_test::ut_detail::template_test_case_gen< \ 144 BOOST_AUTO_TC_INVOKER( test_name ),TL >( \ 145 BOOST_STRINGIZE( test_name ) ) ); \ 147 template<typename type_name> \ 148 void test_name<type_name>::test_method() \ 155 #define BOOST_TEST_CASE_TEMPLATE( name, typelist ) \ 156 boost::unit_test::ut_detail::template_test_case_gen<name,typelist >( \ 157 BOOST_TEST_STRINGIZE( name ) ) \ 164 #define BOOST_TEST_CASE_TEMPLATE_FUNCTION( name, type_name ) \ 165 template<typename type_name> \ 166 void BOOST_JOIN( name, _impl )( boost::type<type_name>* ); \ 169 template<typename TestType> \ 170 static void run( boost::type<TestType>* frwrd = 0 ) \ 172 BOOST_JOIN( name, _impl )( frwrd ); \ 176 template<typename type_name> \ 177 void BOOST_JOIN( name, _impl )( boost::type<type_name>* ) \ 184 #define BOOST_GLOBAL_FIXTURE( F ) \ 185 static boost::unit_test::ut_detail::global_fixture_impl<F> BOOST_JOIN( gf_, F ) ; \ 192 namespace boost {
namespace unit_test {
namespace ut_detail {
207 #define BOOST_AUTO_TU_REGISTRAR( test_name ) \ 208 static boost::unit_test::ut_detail::auto_test_unit_registrar BOOST_JOIN( BOOST_JOIN( test_name, _registrar ), __LINE__ ) 209 #define BOOST_AUTO_TC_INVOKER( test_name ) BOOST_JOIN( test_name, _invoker ) 210 #define BOOST_AUTO_TC_UNIQUE_ID( test_name ) BOOST_JOIN( test_name, _id ) 216 #if defined(BOOST_TEST_MAIN) 218 #ifdef BOOST_TEST_ALTERNATIVE_INIT_API 219 bool init_unit_test() {
221 ::boost::unit_test::test_suite*
225 #ifdef BOOST_TEST_MODULE 227 assign_op( framework::master_test_suite().p_name.value, BOOST_TEST_STRINGIZE( BOOST_TEST_MODULE ).trim(
"\"" ), 0 );
231 #ifdef BOOST_TEST_ALTERNATIVE_INIT_API 243 #endif // BOOST_TEST_UNIT_TEST_SUITE_HPP_071894GER ::boost::unit_test::ut_detail::nil_t BOOST_AUTO_TEST_CASE_FIXTURE
boost::unit_test::test_suite * init_unit_test_suite(int argc, char **const argv)