id summary reporter owner description type status milestone component version severity resolution keywords cc 6749 PARAM_TEST_CASE works poorly with abstract objects philipp.moeller@… Gennadiy Rozental "Using abstract classes as arguments to tests works poorly and requires a workaround: {{{ #include #include #include #include using namespace boost::unit_test; class F { public: virtual void foo()=0; virtual ~F(); }; struct D : public F { void foo() {} }; void test(const F&) {} void test2(const F*) {} test_suite* init_unit_test_suite() { boost::ptr_vector params; params.push_back(new D); // borks // boost::unit_test::framework::master_test_suite(). // add( BOOST_PARAM_TEST_CASE( &test, params.begin(), params.end())); F* f = new D; F* arr[] = {f}; framework::master_test_suite(). add( BOOST_PARAM_TEST_CASE( &test2, arr, arr + 1)); return 0; } }}} It would be nice this weren't required as it adds the additional burden of maintaining memory on the test author and the tests cases shouldn't be required to work on pointers." Feature Requests closed To Be Determined test Boost 1.49.0 Cosmetic wontfix