Esempio n. 1
0
 public function testIsFieldUsedInWorkflow()
 {
     $tracker = new MockTracker();
     $tracker->setReturnValue('getId', 123);
     $field_status = new MockTracker_FormElement_Field_List();
     $field_status->setReturnReference('getTracker', $tracker);
     $field_status->setReturnValue('getId', 1001);
     $field_start_date = new MockTracker_FormElement_Field_List();
     $field_start_date->setReturnReference('getTracker', $tracker);
     $field_start_date->setReturnValue('getId', 1002);
     $field_close_date = new MockTracker_FormElement_Field_List();
     $field_close_date->setReturnReference('getTracker', $tracker);
     $field_close_date->setReturnValue('getId', 1003);
     $workflow = new MockWorkflow();
     $workflow->setReturnValue('getFieldId', $field_status->getId());
     $tf = new MockTransitionFactory();
     $tf->setReturnValue('isFieldUsedInTransitions', false, array($field_start_date));
     $tf->setReturnValue('isFieldUsedInTransitions', true, array($field_close_date));
     $tf->expectCallCount('isFieldUsedInTransitions', 2);
     $wf = TestHelper::getPartialMock('WorkflowFactory', array('getWorkflowByTrackerId', 'getTransitionFactory'));
     $wf->setReturnReference('getTransitionFactory', $tf);
     $wf->setReturnReference('getWorkflowByTrackerId', $workflow, array($tracker->getId()));
     $this->assertTrue($wf->isFieldUsedInWorkflow($field_status));
     $this->assertFalse($wf->isFieldUsedInWorkflow($field_start_date));
     $this->assertTrue($wf->isFieldUsedInWorkflow($field_close_date));
 }