コード例 #1
0
 public function testFactoryShouldCallTheDatabaseToBuildHierarchy()
 {
     $dao = new MockTracker_Hierarchy_Dao();
     $dao->setReturnValue('searchTrackerHierarchy', array());
     $dao->expectOnce('searchTrackerHierarchy');
     $factory = $this->GivenAHierarchyFactory($dao);
     $factory->getHierarchy(array(111));
 }
コード例 #2
0
 public function testGetPossibleChildren()
 {
     $dao = new MockTracker_Hierarchy_Dao();
     $dao->expectOnce('searchAncestorIds', array(1));
     $dao->setReturnValue('searchAncestorIds', array(4));
     $project_id = 100;
     $project = new MockProject();
     $project->setReturnValue('getId', $project_id);
     $tracker = aTracker()->withId(1)->withProject($project)->build();
     $hierarchical_tracker = new Tracker_Hierarchy_HierarchicalTracker($tracker, array());
     $possible_child_1 = aTracker()->withId(2)->build();
     $possible_child_2 = aTracker()->withId(3)->build();
     $ancestor = aTracker()->withId(4)->build();
     $project_trackers = array(1 => $tracker, 2 => $possible_child_1, 3 => $possible_child_2, 4 => $ancestor);
     $tracker_factory = new MockTrackerFactory();
     $tracker_factory->setReturnValue('getTrackersByGroupId', $project_trackers, array($project_id));
     $factory = new Tracker_Hierarchy_HierarchicalTrackerFactory($tracker_factory, $dao);
     $expected_possible_children = array($possible_child_1, $possible_child_2);
     $actual_possible_children = $factory->getPossibleChildren($hierarchical_tracker);
     $actual_possible_children = $this->assertChildEquals($actual_possible_children, $possible_child_1);
     $actual_possible_children = $this->assertChildEquals($actual_possible_children, $possible_child_2);
     $this->assertEqual(count($actual_possible_children), 0);
 }