public function testResolveRecipientAddressesByType()
 {
     $super = User::getByUsername('super');
     Yii::app()->user->userModel = $super;
     $emailMessage = new EmailMessage();
     $emailMessage->owner = $super;
     $emailMessage->subject = "Hello";
     //Set sender, and recipient, and content
     $emailContent = new EmailMessageContent();
     $emailContent->textContent = 'My First Message';
     $emailContent->htmlContent = 'Some fake HTML content';
     $emailMessage->content = $emailContent;
     //Sending from the system, does not have a 'person'.
     $sender = new EmailMessageSender();
     $sender->fromAddress = '*****@*****.**';
     $sender->fromName = 'Zurmo System';
     $emailMessage->sender = $sender;
     //Recipient is billy.
     $recipient = new EmailMessageRecipient();
     $recipient->toAddress = '*****@*****.**';
     $recipient->toName = 'Billy James';
     $recipient->type = EmailMessageRecipient::TYPE_TO;
     $emailMessage->recipients->add($recipient);
     //CC
     $recipient = new EmailMessageRecipient();
     $recipient->toAddress = '*****@*****.**';
     $recipient->toName = 'Billy James CC';
     $recipient->type = EmailMessageRecipient::TYPE_CC;
     $emailMessage->recipients->add($recipient);
     //BCC
     $recipient = new EmailMessageRecipient();
     $recipient->toAddress = '*****@*****.**';
     $recipient->toName = 'Billy James BCC';
     $recipient->type = EmailMessageRecipient::TYPE_BCC;
     $emailMessage->recipients->add($recipient);
     list($toAddresses, $ccAddresses, $bccAddresses) = SendGridEmailHelper::resolveRecipientAddressesByType($emailMessage);
     $this->assertArrayHasKey('*****@*****.**', $toAddresses);
     $this->assertArrayHasKey('*****@*****.**', $ccAddresses);
     $this->assertArrayHasKey('*****@*****.**', $bccAddresses);
     $this->assertEquals('Billy James', $toAddresses['*****@*****.**']);
     $this->assertEquals('Billy James CC', $ccAddresses['*****@*****.**']);
     $this->assertEquals('Billy James BCC', $bccAddresses['*****@*****.**']);
 }
 /**
  * Resolve recipient address by type.
  */
 public function resolveRecipientAddressesByType()
 {
     $emailMessage = $this->emailMessage;
     list($toAddresses, $ccAddresses, $bccAddresses) = SendGridEmailHelper::resolveRecipientAddressesByType($emailMessage);
     $this->toAddresses = $toAddresses;
     $this->ccAddresses = $ccAddresses;
     $this->bccAddresses = $bccAddresses;
 }