
I have the following code for a sample test. I was wondering how I can move code that is common to a long off different test files to a common location and use inheritance? In the code below I can do two things. If its indeed generic I can encapsulate it in a common class used in the tests. Secondly I could put test_one and test_two in a class and inherit from the parent generic class. What is the best solution for what I am trying to do? Stephen ----------CODE-------------- #include <boost/test/unit_test.hpp> #include <fstream> using namespace boost::unit_test; using namespace boost::unit_test_framework; class A {} class B {} A* helper_run_test ( B& target_ref, std::string target_file ) { ... do work on B and return A* result } void test_one () { B& b_ref; A* helper_run_test ( b, "Apple" ); .. perform a BOOST_CHECK_EQUAL } void test_two () { B& b_ref; A* helper_run_test ( b, "Peach" ); .. perform a BOOST_CHECK_EQUAL } test_suite* init_unit_test_suite ( int, char**) { test_suite* test = BOOST_TEST_SUITE ("My test suite"); test->add ( BOOST_TEST_CASE ( &test_one ) ); test->add ( BOOST_TEST_CASE ( &test_two ) ); return test; }