I read it this example in the documentation
You can create test templates like this:
typedef mpl::vector< T1, T2, T3 > types;
BOOST_AUTO_TEST_CASE_TEMPLATE(my_test, T, types) { // Here T will be one of the 'types' }
In your case you can create an mpl::vector of specializations of your class C you want to test.
If I understood wheel the documentation that will run 3 different tests with T1, T2 and T3 as the T of the test.
Maybe my previous problem is easier to explain if I break it in 2 different questions:
1. How can I pass more than one T to the test, in my case I need 3 Ts in the test which each has different values.
A simpler scenario in this case would be trying to test this:
TEST{
T1 a;
T2 b;
BOOST_CHECK(a+b == b+a);
}
And suppose I want to run the test with 4 combinations of parameters:
T1=int, T2=float
T1=float, T2=int
T1=int, T2=int
T1=float, T2=float
2. The other problem is that one of the Ts in my example is a "template