cmCTestMultiProcessHandler: Consolidate test readiness checks
This commit is contained in:
parent
ad3df3ce4d
commit
5ff0b4ed57
@ -449,17 +449,6 @@ std::string cmCTestMultiProcessHandler::GetName(int test)
|
|||||||
|
|
||||||
bool cmCTestMultiProcessHandler::StartTest(int test)
|
bool cmCTestMultiProcessHandler::StartTest(int test)
|
||||||
{
|
{
|
||||||
// Check for locked project resources.
|
|
||||||
for (std::string const& i : this->Properties[test]->ProjectResources) {
|
|
||||||
if (cm::contains(this->ProjectResourcesLocked, i)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!this->AllocateResources(test)) {
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return this->StartTestProcess(test);
|
return this->StartTestProcess(test);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -576,6 +565,19 @@ void cmCTestMultiProcessHandler::StartNextTests()
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Exclude tests that depend on currently-locked project resources.
|
||||||
|
for (std::string const& i : this->Properties[test]->ProjectResources) {
|
||||||
|
if (cm::contains(this->ProjectResourcesLocked, i)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Allocate system resources needed by this test.
|
||||||
|
if (!this->AllocateResources(test)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// The test is ready to run.
|
||||||
if (this->StartTest(test)) {
|
if (this->StartTest(test)) {
|
||||||
numToStart -= processors;
|
numToStart -= processors;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user