function testGetCommentators() { $c1 = new MockTracker_Artifact_Changeset(); $c2 = new MockTracker_Artifact_Changeset(); $c3 = new MockTracker_Artifact_Changeset(); $c4 = new MockTracker_Artifact_Changeset(); $u1 = mock('PFUser'); $u1->setReturnValue('getUserName', 'sandrae'); $u2 = mock('PFUser'); $u2->setReturnValue('getUserName', 'marc'); $um = new MockUserManager(); $um->setReturnReference('getUserById', $u1, array(101)); $um->setReturnReference('getUserById', $u2, array(102)); $artifact = new Tracker_ArtifactTestVersion(); $artifact->setReturnValue('getChangesets', array($c1, $c2, $c3, $c4)); $artifact->setReturnValue('getUserManager', $um); $c1->setReturnValue('getSubmittedBy', 101); $c2->setReturnValue('getSubmittedBy', 102); $c2->setReturnValue('getEmail', '*****@*****.**'); $c3->setReturnValue('getSubmittedBy', null); $c3->setReturnValue('getEmail', '*****@*****.**'); $c4->setReturnValue('getSubmittedBy', null); $c4->setReturnValue('getEmail', ''); $this->assertEqual($artifact->getCommentators(), array('sandrae', 'marc', '*****@*****.**')); }