public function testDuplicateWithCannedResponses()
 {
     $from_tracker = new MockTracker();
     $to_tracker = new MockTracker();
     $tf = new MockTrackerFactory();
     $tf->setReturnReference('getTrackerById', $from_tracker, array(102));
     $tf->setReturnReference('getTrackerById', $to_tracker, array(502));
     $cr1 = new MockTracker_CannedResponse();
     $cr1->setReturnValue('getTitle', 'cr1');
     $cr1->setReturnValue('getBody', 'body of cr1');
     $cr2 = new MockTracker_CannedResponse();
     $cr2->setReturnValue('getTitle', 'cr2');
     $cr2->setReturnValue('getBody', 'body of cr2');
     $cr3 = new MockTracker_CannedResponse();
     $cr3->setReturnValue('getTitle', 'cr3');
     $cr3->setReturnValue('getBody', 'body of cr3');
     $crs = array($cr1, $cr2, $cr3);
     $crf = new Tracker_CannedResponseFactoryTestVersion();
     $crf->setReturnReference('getTrackerFactory', $tf);
     $crf->setReturnValue('getCannedResponses', $crs, array($from_tracker));
     $crf->expectCallCount('create', 3, 'Method create should be called 3 times.');
     $crf->expectAt(0, 'create', array($to_tracker, 'cr1', 'body of cr1'));
     $crf->expectAt(1, 'create', array($to_tracker, 'cr2', 'body of cr2'));
     $crf->expectAt(2, 'create', array($to_tracker, 'cr3', 'body of cr3'));
     $crf->duplicate(102, 502);
 }
Ejemplo n.º 2
0
 public function setUp()
 {
     parent::setUp();
     $this->user = mock('PFUser');
     $this->user->setReturnValue('getId', 666);
     $this->artifact = new MockTracker_Artifact($this);
     $af = new MockTracker_ArtifactFactory($this);
     $af->setReturnReference('getArtifactById', $this->artifact, array('1'));
     $this->report = new MockTracker_Report($this);
     $rf = new MockTracker_ReportFactory($this);
     $rf->setReturnReference('getReportById', $this->report, array('2', $this->user->getId(), true));
     $this->tracker = new MockTracker($this);
     $this->tracker->setReturnValue('isActive', true);
     $this->tracker->setReturnValue('userCanView', true);
     $tf = new MockTrackerFactory($this);
     $tf->setReturnReference('getTrackerById', $this->tracker, array(3));
     $this->formElement = new MockTracker_FormElement_Interface($this);
     $ff = new MockTracker_FormElementFactory($this);
     $ff->setReturnReference('getFormElementById', $this->formElement, array('4'));
     $this->artifact->setReturnReference('getTracker', $this->tracker);
     $this->report->setReturnReference('getTracker', $this->tracker);
     $this->formElement->setReturnReference('getTracker', $this->tracker);
     $this->url = new Tracker_URLTestVersion($this);
     $this->url->setReturnReference('getTrackerFactory', $tf);
     $this->url->setReturnReference('getTracker_FormElementFactory', $ff);
     $this->url->setReturnReference('getArtifactFactory', $af);
     $this->url->setReturnReference('getArtifactReportFactory', $rf);
 }
 private function aMockTrackerFactoryWith($project_id, $project_trackers)
 {
     $tracker_factory = new MockTrackerFactory();
     $tracker_factory->expectOnce('getTrackersByGroupId', array($project_id));
     $tracker_factory->setReturnValue('getTrackersByGroupId', $project_trackers);
     return $tracker_factory;
 }
Ejemplo n.º 4
0
 /**
  * Given I have 3 plugin_tracker_artifact references in the template project
  * - bug
  * - issue
  * - task
  * And 'bug' correspond to 'Bug' tracker
  * And 'task' correspond to 'Task' tracker
  * And 'issue' was created by hand by the admin
  * And 'Bug' tracker is instanciated for new project
  * And 'Task' tracker is not instanciated for new project
  *
  * Then 'issue' reference is created
  * And 'bug' reference is not created (it's up to tracker creation to create the reference)
  * And 'task' reference is not created (it's up to tracker creation to create the reference)
  *
  */
 public function testDuplicateCopyReferences()
 {
     $source_project_id = 100;
     $destinatnion_project_id = 120;
     $u_group_mapping = array();
     $tm = TestHelper::getPartialMock('TrackerManager', array('getTrackerFactory', 'getReferenceManager'));
     $tf = new MockTrackerFactory();
     $tf->expectOnce('duplicate');
     $tm->setReturnValue('getTrackerFactory', $tf);
     $r1 = new Reference(101, 'bug', 'desc', '/plugins/tracker/?aid=$1&group_id=$group_id', 'P', 'plugin_tracker', 'plugin_tracker_artifact', 1, 100);
     $r2 = new Reference(102, 'issue', 'desc', '/plugins/tracker/?aid=$1&group_id=$group_id', 'P', 'plugin_tracker', 'plugin_tracker_artifact', 1, 100);
     $r3 = new Reference(103, 'task', 'desc', '/plugins/tracker/?aid=$1&group_id=$group_id', 'P', 'plugin_tracker', 'plugin_tracker_artifact', 1, 100);
     $rm = new MockReferenceManager();
     $rm->expectOnce('getReferencesByGroupId', array($source_project_id));
     $rm->setReturnValue('getReferencesByGroupId', array($r1, $r2, $r3));
     $tm->setReturnValue('getReferenceManager', $rm);
     $t1 = new MockTracker();
     $t1->setReturnValue('getItemName', 'bug');
     $t1->setReturnValue('mustBeInstantiatedForNewProjects', true);
     $t2 = new MockTracker();
     $t2->setReturnValue('getItemName', 'task');
     $t2->setReturnValue('mustBeInstantiatedForNewProjects', false);
     $tf->setReturnValue('getTrackersByGroupId', array($t1, $t2), $source_project_id);
     $rm->expectOnce('createReference', array($r2));
     $tm->duplicate($source_project_id, $destinatnion_project_id, $u_group_mapping);
 }