Exemple #1
0
 /**
  * Create a tree from the given list according to the hierarchy definition
  * 
  * @param DataAccessResult $artifacts
  * @param array $tracker_ids
  * @param Tracker_Hierarchy $hierarchy
  * 
  * @return \TreeNode 
  */
 public function buildTreeWithCompleteList($artifacts, array $tracker_ids, Tracker_Hierarchy $hierarchy)
 {
     $root = new TreeNode();
     $root->setId(0);
     if ($artifacts) {
         list($artifacts_by_id, $artifacts_by_tracker) = $this->indexArtifactsByIdAndTracker($artifacts);
         $tracker_ids = $hierarchy->sortTrackerIds($tracker_ids);
         $this->organizeArtifactsInTrackerHierarchy($root, $hierarchy, $artifacts_by_id, $artifacts_by_tracker, $tracker_ids);
     }
     return $root;
 }
Exemple #2
0
 public function itReturnsTrackersFromTopToBottomAndTrackerNotInHierarchyAtTheEnd()
 {
     $hierarchy = new Tracker_Hierarchy();
     $hierarchy->addRelationship(112, 113);
     $hierarchy->addRelationship(111, 112);
     $this->assertEqual(array(111, 112, 113, 667, 668, 666), $hierarchy->sortTrackerIds(array(667, 111, 666, 112, 668, 113)));
 }