mirror of
https://github.com/reactos/CMake.git
synced 2024-12-13 06:16:49 +00:00
ctest: refactor some code
This commit is contained in:
parent
451d3907fd
commit
1166aa5ce7
@ -432,32 +432,26 @@ bool cmCTestRunTest::StartTest(size_t completed, size_t total)
|
|||||||
|
|
||||||
this->ProcessOutput.clear();
|
this->ProcessOutput.clear();
|
||||||
|
|
||||||
|
this->TestResult.Properties = this->TestProperties;
|
||||||
|
this->TestResult.ExecutionTime = cmDuration::zero();
|
||||||
|
this->TestResult.CompressOutput = false;
|
||||||
|
this->TestResult.ReturnValue = -1;
|
||||||
|
this->TestResult.TestCount = this->TestProperties->Index;
|
||||||
|
this->TestResult.Name = this->TestProperties->Name;
|
||||||
|
this->TestResult.Path = this->TestProperties->Directory;
|
||||||
|
|
||||||
// Return immediately if test is disabled
|
// Return immediately if test is disabled
|
||||||
if (this->TestProperties->Disabled) {
|
if (this->TestProperties->Disabled) {
|
||||||
this->TestResult.Properties = this->TestProperties;
|
|
||||||
this->TestResult.ExecutionTime = cmDuration::zero();
|
|
||||||
this->TestResult.CompressOutput = false;
|
|
||||||
this->TestResult.ReturnValue = -1;
|
|
||||||
this->TestResult.CompletionStatus = "Disabled";
|
this->TestResult.CompletionStatus = "Disabled";
|
||||||
this->TestResult.Status = cmCTestTestHandler::NOT_RUN;
|
this->TestResult.Status = cmCTestTestHandler::NOT_RUN;
|
||||||
this->TestResult.TestCount = this->TestProperties->Index;
|
|
||||||
this->TestResult.Name = this->TestProperties->Name;
|
|
||||||
this->TestResult.Path = this->TestProperties->Directory;
|
|
||||||
this->TestProcess = cm::make_unique<cmProcess>(*this);
|
this->TestProcess = cm::make_unique<cmProcess>(*this);
|
||||||
this->TestResult.Output = "Disabled";
|
this->TestResult.Output = "Disabled";
|
||||||
this->TestResult.FullCommandLine.clear();
|
this->TestResult.FullCommandLine.clear();
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
this->TestResult.Properties = this->TestProperties;
|
|
||||||
this->TestResult.ExecutionTime = cmDuration::zero();
|
|
||||||
this->TestResult.CompressOutput = false;
|
|
||||||
this->TestResult.ReturnValue = -1;
|
|
||||||
this->TestResult.CompletionStatus = "Failed to start";
|
this->TestResult.CompletionStatus = "Failed to start";
|
||||||
this->TestResult.Status = cmCTestTestHandler::BAD_COMMAND;
|
this->TestResult.Status = cmCTestTestHandler::BAD_COMMAND;
|
||||||
this->TestResult.TestCount = this->TestProperties->Index;
|
|
||||||
this->TestResult.Name = this->TestProperties->Name;
|
|
||||||
this->TestResult.Path = this->TestProperties->Directory;
|
|
||||||
|
|
||||||
// Check for failed fixture dependencies before we even look at the command
|
// Check for failed fixture dependencies before we even look at the command
|
||||||
// arguments because if we are not going to run the test, the command and
|
// arguments because if we are not going to run the test, the command and
|
||||||
@ -635,9 +629,8 @@ bool cmCTestRunTest::ForkProcess(cmDuration testTimeOut, bool explicitTimeout,
|
|||||||
{
|
{
|
||||||
this->TestProcess = cm::make_unique<cmProcess>(*this);
|
this->TestProcess = cm::make_unique<cmProcess>(*this);
|
||||||
this->TestProcess->SetId(this->Index);
|
this->TestProcess->SetId(this->Index);
|
||||||
this->TestProcess->SetWorkingDirectory(
|
this->TestProcess->SetWorkingDirectory(this->TestProperties->Directory);
|
||||||
this->TestProperties->Directory.c_str());
|
this->TestProcess->SetCommand(this->ActualCommand);
|
||||||
this->TestProcess->SetCommand(this->ActualCommand.c_str());
|
|
||||||
this->TestProcess->SetCommandArguments(this->Arguments);
|
this->TestProcess->SetCommandArguments(this->Arguments);
|
||||||
|
|
||||||
// determine how much time we have
|
// determine how much time we have
|
||||||
|
@ -73,7 +73,7 @@ cmProcess::cmProcess(cmCTestRunTest& runner)
|
|||||||
|
|
||||||
cmProcess::~cmProcess() = default;
|
cmProcess::~cmProcess() = default;
|
||||||
|
|
||||||
void cmProcess::SetCommand(const char* command)
|
void cmProcess::SetCommand(std::string const& command)
|
||||||
{
|
{
|
||||||
this->Command = command;
|
this->Command = command;
|
||||||
}
|
}
|
||||||
@ -83,6 +83,11 @@ void cmProcess::SetCommandArguments(std::vector<std::string> const& args)
|
|||||||
this->Arguments = args;
|
this->Arguments = args;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void cmProcess::SetWorkingDirectory(std::string const& dir)
|
||||||
|
{
|
||||||
|
this->WorkingDirectory = dir;
|
||||||
|
}
|
||||||
|
|
||||||
bool cmProcess::StartProcess(uv_loop_t& loop, std::vector<size_t>* affinity)
|
bool cmProcess::StartProcess(uv_loop_t& loop, std::vector<size_t>* affinity)
|
||||||
{
|
{
|
||||||
this->ProcessState = cmProcess::State::Error;
|
this->ProcessState = cmProcess::State::Error;
|
||||||
|
@ -28,10 +28,9 @@ class cmProcess
|
|||||||
public:
|
public:
|
||||||
explicit cmProcess(cmCTestRunTest& runner);
|
explicit cmProcess(cmCTestRunTest& runner);
|
||||||
~cmProcess();
|
~cmProcess();
|
||||||
const char* GetCommand() { return this->Command.c_str(); }
|
void SetCommand(std::string const& command);
|
||||||
void SetCommand(const char* command);
|
|
||||||
void SetCommandArguments(std::vector<std::string> const& arg);
|
void SetCommandArguments(std::vector<std::string> const& arg);
|
||||||
void SetWorkingDirectory(const char* dir) { this->WorkingDirectory = dir; }
|
void SetWorkingDirectory(std::string const& dir);
|
||||||
void SetTimeout(cmDuration t) { this->Timeout = t; }
|
void SetTimeout(cmDuration t) { this->Timeout = t; }
|
||||||
void ChangeTimeout(cmDuration t);
|
void ChangeTimeout(cmDuration t);
|
||||||
void ResetStartTime();
|
void ResetStartTime();
|
||||||
|
Loading…
Reference in New Issue
Block a user