public function itRetrievesAvailablePlanningTrackersIncludingTheCurrentPlanningTracker() { $group_id = 789; $planning_dao = mock('PlanningDao'); $tracker_factory = mock('TrackerFactory'); $planning_factory = aPlanningFactory()->withDao($planning_dao)->withTrackerFactory($tracker_factory)->build(); $sprints_tracker_row = array('id' => 1, 'name' => 'Sprints'); $stories_tracker_row = array('id' => 2, 'name' => 'Stories'); $tracker_rows = array($sprints_tracker_row, $stories_tracker_row); $sprints_tracker = aTracker()->withId(1)->withName('Sprints')->build(); $stories_tracker = aTracker()->withId(2)->withName('Stories')->build(); $releases_tracker = aTracker()->withId(3)->withName('Releases')->build(); stub($tracker_factory)->getInstanceFromRow($sprints_tracker_row)->returns($sprints_tracker); stub($tracker_factory)->getInstanceFromRow($stories_tracker_row)->returns($stories_tracker); stub($planning_dao)->searchNonPlanningTrackersByGroupId($group_id)->returns($tracker_rows); $planning = aPlanning()->withGroupId($group_id)->withPlanningTracker($releases_tracker)->build(); $actual_trackers = $planning_factory->getAvailablePlanningTrackers($planning); $this->assertEqual(count($actual_trackers), 3); list($releases_tracker, $sprints_tracker, $stories_tracker) = $actual_trackers; $this->assertEqual($releases_tracker->getId(), 3); $this->assertEqual($sprints_tracker->getId(), 1); $this->assertEqual($stories_tracker->getId(), 2); $this->assertEqual($releases_tracker->getName(), 'Releases'); $this->assertEqual($sprints_tracker->getName(), 'Sprints'); $this->assertEqual($stories_tracker->getName(), 'Stories'); }
public function itDelegatesRetrievalOfPlanningTrackerIdsByGroupIdToDao() { $group_id = 456; $expected_ids = array(1, 2, 3); $dao = mock('PlanningDao'); $factory = aPlanningFactory()->withDao($dao)->build(); stub($dao)->searchPlanningTrackerIdsByGroupId($group_id)->returns($expected_ids); $actual_ids = $factory->getPlanningTrackerIdsByGroupId($group_id); $this->assertEqual($actual_ids, $expected_ids); }
function setUp() { parent::setUp(); $this->group_id = '123'; $this->request = aRequest()->with('group_id', $this->group_id)->build(); $this->dao = mock('PlanningDao'); $this->planning_factory = aPlanningFactory()->withDao($this->dao)->build(); $this->tracker_factory = $this->planning_factory->getTrackerFactory(); $this->controller = new Planning_Controller($this->request, $this->planning_factory); $GLOBALS['Language'] = new MockBaseLanguage_Planning_ControllerNewTest(); $this->available_backlog_trackers = array(101 => aTracker()->withId(101)->withName('Stories')->build(), 102 => aTracker()->withId(102)->withName('Releases')->build(), 103 => aTracker()->withId(103)->withName('Sprints')->build()); $this->available_planning_trackers = array(101 => aTracker()->withId(101)->withName('Stories')->build(), 103 => aTracker()->withId(103)->withName('Sprints')->build()); $this->renderNew(); }