summaryrefslogtreecommitdiff
path: root/Source/CTest/cmCTestRunTest.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/CTest/cmCTestRunTest.h')
-rw-r--r--Source/CTest/cmCTestRunTest.h28
1 files changed, 25 insertions, 3 deletions
diff --git a/Source/CTest/cmCTestRunTest.h b/Source/CTest/cmCTestRunTest.h
index 38cc417e5..f781c7ab0 100644
--- a/Source/CTest/cmCTestRunTest.h
+++ b/Source/CTest/cmCTestRunTest.h
@@ -5,17 +5,20 @@
#include "cmConfigure.h" // IWYU pragma: keep
+#include <map>
+#include <memory>
#include <set>
-#include <stddef.h>
#include <string>
#include <vector>
+#include <stddef.h>
+
+#include "cmCTestMultiProcessHandler.h"
#include "cmCTestTestHandler.h"
#include "cmDuration.h"
-#include "cmProcess.h" // IWYU pragma: keep (for unique_ptr)
+#include "cmProcess.h"
class cmCTest;
-class cmCTestMultiProcessHandler;
/** \class cmRunTest
* \brief represents a single test to be run
@@ -81,6 +84,19 @@ public:
bool TimedOutForStopTime() const { return this->TimeoutIsForStopTime; }
+ void SetUseAllocatedResources(bool use)
+ {
+ this->UseAllocatedResources = use;
+ }
+ void SetAllocatedResources(
+ const std::vector<
+ std::map<std::string,
+ std::vector<cmCTestMultiProcessHandler::ResourceAllocation>>>&
+ resources)
+ {
+ this->AllocatedResources = resources;
+ }
+
private:
bool NeedsToRerun();
void DartProcessing();
@@ -92,6 +108,8 @@ private:
// Run post processing of the process output for MemCheck
void MemCheckPostProcess();
+ void SetupResourcesEnvironment();
+
// Returns "completed/total Test #Index: "
std::string GetTestPrefix(size_t completed, size_t total) const;
@@ -110,6 +128,10 @@ private:
std::string StartTime;
std::string ActualCommand;
std::vector<std::string> Arguments;
+ bool UseAllocatedResources = false;
+ std::vector<std::map<
+ std::string, std::vector<cmCTestMultiProcessHandler::ResourceAllocation>>>
+ AllocatedResources;
bool RunUntilFail;
int NumberOfRunsLeft;
bool RunAgain;