diff options
author | Betsy McPhail <betsy.mcphail@kitware.com> | 2015-07-02 14:21:36 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2015-07-06 14:06:35 (GMT) |
commit | 42747fcc73478073eaaee4c906ffe03c0b33c632 (patch) | |
tree | c1ecc967a52046398fe4beb269866d0d3ad383da /Source | |
parent | 8fbd9584af44100bbddd0f4031b57c5bc2530837 (diff) | |
download | CMake-42747fcc73478073eaaee4c906ffe03c0b33c632.zip CMake-42747fcc73478073eaaee4c906ffe03c0b33c632.tar.gz CMake-42747fcc73478073eaaee4c906ffe03c0b33c632.tar.bz2 |
CTest: Show the number of tests for each label in the summary
Diffstat (limited to 'Source')
-rw-r--r-- | Source/CTest/cmCTestTestHandler.cxx | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/Source/CTest/cmCTestTestHandler.cxx b/Source/CTest/cmCTestTestHandler.cxx index 59576f4..5faf001 100644 --- a/Source/CTest/cmCTestTestHandler.cxx +++ b/Source/CTest/cmCTestTestHandler.cxx @@ -656,9 +656,8 @@ int cmCTestTestHandler::ProcessHandler() void cmCTestTestHandler::PrintLabelSummary() { cmCTestTestHandler::ListOfTests::iterator it = this->TestList.begin(); - cmCTestTestHandler::TestResultsVector::iterator ri = - this->TestResults.begin(); std::map<std::string, double> labelTimes; + std::map<std::string, int> labelCounts; std::set<std::string> labels; // initialize maps std::string::size_type maxlen = 0; @@ -676,10 +675,12 @@ void cmCTestTestHandler::PrintLabelSummary() } labels.insert(*l); labelTimes[*l] = 0; + labelCounts[*l] = 0; } } } - ri = this->TestResults.begin(); + cmCTestTestHandler::TestResultsVector::iterator ri = + this->TestResults.begin(); // fill maps for(; ri != this->TestResults.end(); ++ri) { @@ -691,6 +692,7 @@ void cmCTestTestHandler::PrintLabelSummary() l != p.Labels.end(); ++l) { labelTimes[*l] += result.ExecutionTime; + ++labelCounts[*l]; } } } @@ -705,10 +707,21 @@ void cmCTestTestHandler::PrintLabelSummary() { std::string label = *i; label.resize(maxlen +3, ' '); + char buf[1024]; sprintf(buf, "%6.2f sec", labelTimes[*i]); + + std::ostringstream labelCountStr; + labelCountStr << "(" << labelCounts[*i] << " test"; + if (labelCounts[*i] > 1) + { + labelCountStr << "s"; + } + labelCountStr << ")"; + cmCTestOptionalLog(this->CTest, HANDLER_OUTPUT, "\n" - << label << " = " << buf, this->Quiet ); + << label << " = " << buf << " " << labelCountStr.str(), + this->Quiet ); if ( this->LogFile ) { *this->LogFile << "\n" << *i << " = " |