summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmCTestRunTest.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2018-09-12 14:49:08 (GMT)
committerBrad King <brad.king@kitware.com>2018-09-12 14:59:55 (GMT)
commited71ec757995e78de31a083a6c8b1092b13dbc08 (patch)
tree3eb1a18db69b44f4dfaf46bc6baf89d74552d1c8 /Source/CTest/cmCTestRunTest.h
parent344eb9c8dc3b16a524729cb66ad25fc1c127a02c (diff)
downloadCMake-ed71ec757995e78de31a083a6c8b1092b13dbc08.zip
CMake-ed71ec757995e78de31a083a6c8b1092b13dbc08.tar.gz
CMake-ed71ec757995e78de31a083a6c8b1092b13dbc08.tar.bz2
CTest: Improve stop-time implementation
The CTestTestStopTime test has been failing sporadically because the stop time causes the first internal test to have a timeout short enough that we might hit it and start the second test just before the stop time is reached. Instead we should track when a timeout is shortened in order to stay within the stop time. If a test times out for this reason then we should consider the stop time reached and not start any more tests.
Diffstat (limited to 'Source/CTest/cmCTestRunTest.h')
-rw-r--r--Source/CTest/cmCTestRunTest.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/CTest/cmCTestRunTest.h b/Source/CTest/cmCTestRunTest.h
index 3b1d674..7e80157 100644
--- a/Source/CTest/cmCTestRunTest.h
+++ b/Source/CTest/cmCTestRunTest.h
@@ -80,6 +80,8 @@ public:
void FinalizeTest();
+ bool TimedOutForStopTime() const { return this->TimeoutIsForStopTime; }
+
private:
bool NeedsToRerun();
void DartProcessing();
@@ -92,6 +94,7 @@ private:
void MemCheckPostProcess();
cmCTestTestHandler::cmCTestTestProperties* TestProperties;
+ bool TimeoutIsForStopTime = false;
// Pointer back to the "parent"; the handler that invoked this test run
cmCTestTestHandler* TestHandler;
cmCTest* CTest;