1
0
Fork 0

TestSuite: Execution of multiple tests or suites using comma separated lists.

This enables options such as '-u AeroElementTests,YASimAtmosphereTests'.  It
should help tracking down bugs whereby a test failure or error is triggered
solely due to a previous test.
This commit is contained in:
Edward d'Auvergne 2020-08-17 20:05:36 +02:00
parent a297c89144
commit 04ee8c34a4
2 changed files with 9 additions and 3 deletions

View file

@ -55,8 +55,14 @@ int testRunner(const std::string& type, const std::string& title, char *subset,
// Execute the tests.
if (subset == NULL)
runner.run("", false, true, false);
else
runner.run(subset, false, true, false);
else {
std::stringstream testStream(subset);
std::string testName;
while( testStream.good() ) {
getline( testStream, testName, ',' );
runner.run(testName, false, true, false);
}
}
// Clean up.
delete testListener;

View file

@ -44,7 +44,7 @@ void helpPrintout(std::ostream &stream) {
stream << std::endl;
stream << " The -s, -u, -g, and -m options accept an optional argument to perform a" << std::endl;
stream << " subset of all tests. This argument should either be the name of a test" << std::endl;
stream << " suite or the full name of an individual test." << std::endl;
stream << " suite, the full name of an individual test, or a comma separated list." << std::endl;
stream << std::endl;
stream << " Full test names consist of the test suite name, the separator '::' and then" << std::endl;
stream << " the individual test name. The test names can revealed with the verbose" << std::endl;