I've been using CppUnit happily for a while now but I have been a bit frustrated by one particular lack for which I haven't been able to come with a workaround.
What I would like to be able to do is to set up a vector or array containing sets of numerical values, and then pass each set of values to a test method.
At present, I do this using a for loop inside a TestMethod. This has the disadvantage that CPPUNIT_FAIL will cause remaining tests not to be executed. So although it picks up failures fine, it gives no indication of the spread of the errors throughout the array.
What I thought might be the correct solution was to extend the TestCaller class. I thought about having TestCallerIndexed, and adding a TestCaller::runTest(int index) method that would somehow pass an integer value to the TestMethod assigned to the TestFixture. But then I thought that this probably wouldn't work - because the TestMethod prototype would have changed, so it wouldn't be possible to assign it to the TestFixture.
Has anyone else had similar problems, and worked out a nice solution that they would care to share?
I'll cross-post this on the CppUnit-devel list.
Cheers
JP
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi there
I've been using CppUnit happily for a while now but I have been a bit frustrated by one particular lack for which I haven't been able to come with a workaround.
What I would like to be able to do is to set up a vector or array containing sets of numerical values, and then pass each set of values to a test method.
At present, I do this using a for loop inside a TestMethod. This has the disadvantage that CPPUNIT_FAIL will cause remaining tests not to be executed. So although it picks up failures fine, it gives no indication of the spread of the errors throughout the array.
What I thought might be the correct solution was to extend the TestCaller class. I thought about having TestCallerIndexed, and adding a TestCaller::runTest(int index) method that would somehow pass an integer value to the TestMethod assigned to the TestFixture. But then I thought that this probably wouldn't work - because the TestMethod prototype would have changed, so it wouldn't be possible to assign it to the TestFixture.
Has anyone else had similar problems, and worked out a nice solution that they would care to share?
I'll cross-post this on the CppUnit-devel list.
Cheers
JP