public function testGetRolesToNotifyAsArray() { $workFlow = new WorkflowStateMachine(); $workFlow->setRolesToNotify(NULL); $result = $workFlow->getRolesToNotifyAsArray(); $this->assertEquals(0, count($result)); $workFlow->setRolesToNotify(''); $result = $workFlow->getRolesToNotifyAsArray(); $this->assertEquals(0, count($result)); $workFlow->setRolesToNotify('ESS'); $result = $workFlow->getRolesToNotifyAsArray(); $this->assertEquals(array('ESS'), $result); $workFlow->setRolesToNotify('Ess,Supervisor,Subscriber'); $result = $workFlow->getRolesToNotifyAsArray(); $this->assertEquals(array('Ess', 'Supervisor', 'Subscriber'), $result); $workFlow->setRolesToNotify(',,,'); $result = $workFlow->getRolesToNotifyAsArray(); $this->assertEquals(0, count($result)); }
public function testListenOneWorkflow() { $workFlow = new WorkflowStateMachine(); $workFlow->setAction('apply'); $workFlow->setRolesToNotify('ESS,Supervisor,ABC'); $workFlow->setRole('ess'); $eventData = array('workFlow' => $workFlow); $emailType = 'leave.apply'; $recipientRoles = array('ESS', 'Supervisor', 'ABC'); $mockService = $this->getMock('EmailService', array('sendEmailNotifications')); $mockService->expects($this->once())->method('sendEmailNotifications')->with($emailType, $recipientRoles, $eventData, 'ess'); $this->mailer->setEmailService($mockService); $sfEvent = new sfEvent($this, 'test', $eventData); $this->mailer->listen($sfEvent); }