BUG: 0007569 add ability to do -R/-E in ctest_test command

This commit is contained in:
Bill Hoffman 2008-09-09 11:44:16 -04:00
parent acbe39ff7e
commit 6bc394c8e5
2 changed files with 22 additions and 3 deletions

View File

@ -24,6 +24,8 @@ cmCTestTestCommand::cmCTestTestCommand()
this->Arguments[ctt_START] = "START"; this->Arguments[ctt_START] = "START";
this->Arguments[ctt_END] = "END"; this->Arguments[ctt_END] = "END";
this->Arguments[ctt_STRIDE] = "STRIDE"; this->Arguments[ctt_STRIDE] = "STRIDE";
this->Arguments[ctt_EXCLUDE] = "EXCLUDE";
this->Arguments[ctt_INCLUDE] = "INCLUDE";
this->Arguments[ctt_LAST] = 0; this->Arguments[ctt_LAST] = 0;
this->Last = ctt_LAST; this->Last = ctt_LAST;
} }
@ -68,6 +70,14 @@ cmCTestGenericHandler* cmCTestTestCommand::InitializeHandler()
handler->SetOption("TestsToRunInformation", handler->SetOption("TestsToRunInformation",
testsToRunString.str().c_str()); testsToRunString.str().c_str());
} }
if(this->Values[ctt_EXCLUDE])
{
handler->SetOption("ExcludeRegularExpression", this->Values[ctt_EXCLUDE]);
}
if(this->Values[ctt_INCLUDE])
{
handler->SetOption("IncludeRegularExpression", this->Values[ctt_INCLUDE]);
}
return handler; return handler;
} }

View File

@ -44,7 +44,7 @@ public:
/** /**
* The name of the command as specified in CMakeList.txt. * The name of the command as specified in CMakeList.txt.
*/ */
virtual const char* GetName() { return "CTEST_TEST";} virtual const char* GetName() { return "ctest_test";}
/** /**
* Succinct documentation. * Succinct documentation.
@ -60,9 +60,16 @@ public:
virtual const char* GetFullDocumentation() virtual const char* GetFullDocumentation()
{ {
return return
" CTEST_TEST([BUILD build_dir] [RETURN_VALUE res])\n" " CTEST_TEST([BUILD build_dir]\n"
" [START start number] [END end number]\n"
" [STRIDE stride number] [EXCLUDE exclude regex ]\n"
" [INCLUDE include regex] [RETURN_VALUE res] )\n"
"Tests the given build directory and stores results in Test.xml. The " "Tests the given build directory and stores results in Test.xml. The "
"second argument is a variable that will hold value."; "second argument is a variable that will hold value. Optionally, "
"you can specify the starting test number START, the ending test number "
"END, the number of tests to skip between each test STRIDE, a regular "
"expression for tests to run INCLUDE, or a regular expression for tests "
"to not run EXCLUDE.";
} }
cmTypeMacro(cmCTestTestCommand, cmCTestHandlerCommand); cmTypeMacro(cmCTestTestCommand, cmCTestHandlerCommand);
@ -77,6 +84,8 @@ protected:
ctt_START, ctt_START,
ctt_END, ctt_END,
ctt_STRIDE, ctt_STRIDE,
ctt_EXCLUDE,
ctt_INCLUDE,
ctt_LAST ctt_LAST
}; };
}; };