浏览代码

CTest: added comments that describe the basic test sorting approach

Nils Gladitz 12 年之前
父节点
当前提交
384beffc39
共有 1 个文件被更改,包括 7 次插入0 次删除
  1. 7 0
      Source/CTest/cmCTestMultiProcessHandler.cxx

+ 7 - 0
Source/CTest/cmCTestMultiProcessHandler.cxx

@@ -445,6 +445,8 @@ void cmCTestMultiProcessHandler::CreateTestCostList()
   priorityStack.push_back(TestSet());
   TestSet &topLevel = priorityStack.back();
 
+  // Add previously failed tests to the front of the cost list
+  // and queue other tests for further sorting
   for(TestMap::const_iterator i = this->Tests.begin();
     i != this->Tests.end(); ++i)
     {
@@ -460,6 +462,8 @@ void cmCTestMultiProcessHandler::CreateTestCostList()
       }
     }
 
+  // Repeatedly move dependencies of the tests on the current dependency level
+  // to the next level until no further dependencies exist.
   while(priorityStack.back().size())
     {
     TestSet &previousSet = priorityStack.back();
@@ -480,8 +484,11 @@ void cmCTestMultiProcessHandler::CreateTestCostList()
       }
     }
 
+  // Remove the empty dependency level
   priorityStack.pop_back();
 
+  // Reverse iterate over the different dependency levels (deepest first).
+  // Sort tests within each level by COST and append them to the cost list.
   for(std::list<TestSet>::reverse_iterator i = priorityStack.rbegin();
     i != priorityStack.rend(); ++i)
     {