/**
  * @depends testSend
  */
 public function testSendRealEmail()
 {
     self::loadEmailHelperWithTestCredentials();
     $this->assertEquals(0, Yii::app()->emailHelper->getQueuedCount());
     if (EmailMessageTestHelper::isSetEmailAccountsTestConfiguration()) {
         $user = User::getByUsername('steve');
         $user->primaryEmail->emailAddress = Yii::app()->params['emailTestAccounts']['userImapSettings']['imapUsername'];
         $this->assertTrue($user->save());
         Yii::app()->imap->connect();
         Yii::app()->imap->deleteMessages(true);
         $imapStats = Yii::app()->imap->getMessageBoxStatsDetailed();
         $this->assertEquals(0, $imapStats->Nmsgs);
         $emailMessage = EmailMessageTestHelper::createOutboxEmail($this->user, 'Test email', 'Raw content', ',b>html content</b>end.', 'Zurmo', Yii::app()->emailHelper->outboundUsername, 'Ivica', Yii::app()->params['emailTestAccounts']['userImapSettings']['imapUsername']);
         $filesIds = array();
         $fileTxt = ZurmoTestHelper::createFileModel('testNote.txt');
         $filesIds[] = $fileTxt->id;
         $filePng = ZurmoTestHelper::createFileModel('testImage.png');
         $filesIds[] = $filePng->id;
         $fileZip = ZurmoTestHelper::createFileModel('testZip.zip');
         $filesIds[] = $fileZip->id;
         $filePdf = ZurmoTestHelper::createFileModel('testPDF.pdf');
         $filesIds[] = $filePdf->id;
         EmailMessageUtil::attachFilesToMessage($filesIds, $emailMessage);
         $this->assertEquals('4', count($emailMessage->files));
         Yii::app()->imap->connect();
         $imapStats = Yii::app()->imap->getMessageBoxStatsDetailed();
         $this->assertEquals(0, $imapStats->Nmsgs);
         $this->assertEquals(1, Yii::app()->emailHelper->getQueuedCount());
         $this->assertEquals(6, Yii::app()->emailHelper->getSentCount());
         Yii::app()->emailHelper->sendQueued();
         $job = new ProcessOutboundEmailJob();
         $this->assertTrue($job->run());
         $this->assertEquals(0, Yii::app()->emailHelper->getQueuedCount());
         $this->assertEquals(7, Yii::app()->emailHelper->getSentCount());
         sleep(30);
         Yii::app()->imap->connect();
         $imapStats = Yii::app()->imap->getMessageBoxStatsDetailed();
         $this->assertEquals(1, $imapStats->Nmsgs);
     }
 }
 public function testAttachFilesToMessage()
 {
     $billy = User::getByUsername('billy');
     Yii::app()->user->userModel = $billy;
     $filesIds = array();
     $fileTxt = ZurmoTestHelper::createFileModel('testNote.txt', 'FileModel');
     $filesIds[] = $fileTxt->id;
     $filePng = ZurmoTestHelper::createFileModel('testImage.png', 'FileModel');
     $filesIds[] = $filePng->id;
     $fileZip = ZurmoTestHelper::createFileModel('testZip.zip', 'FileModel');
     $filesIds[] = $fileZip->id;
     $filePdf = ZurmoTestHelper::createFileModel('testPDF.pdf', 'FileModel');
     $filesIds[] = $filePdf->id;
     $emailMessage = new EmailMessage();
     EmailMessageUtil::attachFilesToMessage($filesIds, $emailMessage);
     $this->assertEquals('4', count($emailMessage->files));
 }