/**
  * Test doStuffOnPrePersist
  */
 public function testDoStuffOnPrePersist()
 {
     $emailSendReceive = new EmailSendReceive();
     $dateTime = new DateTime();
     $emailSendReceive->setReceivedAt($dateTime);
     $this->assertEquals($dateTime, $emailSendReceive->getReceivedAt());
     $this->assertEquals(EmailSendReceive::STATUS_CREATED, $emailSendReceive->getStatus());
 }
 /**
  * set up entity.
  */
 private function setUpEntity()
 {
     $emailSendReceive = new EmailSendReceive();
     $emailSendReceive->setSentAt(new DateTime('-1 day'));
     $emailSendReceiveColl = new EmailSendReceiveCollection();
     $emailSendReceiveColl->add($emailSendReceive);
     $this->getPersistCollection()->persist($emailSendReceiveColl);
     $this->getPersistCollection()->flush();
 }
 /**
  * @param EmailSendReceive $emailSendCheck
  *
  * @return Swift_Mime_MimePart
  */
 protected function buildMessage(EmailSendReceive $emailSendCheck)
 {
     $message = Swift_Message::newInstance($emailSendCheck->getSubject())->setFrom($emailSendCheck->getFrom())->setTo($emailSendCheck->getTo())->setBody($emailSendCheck->getBody());
     return $message;
 }
 private function setUpEntity($sentAt = '-1 day')
 {
     $emailSendReceive = new EmailSendReceive();
     $emailSendReceive->setSentAt(new DateTime($sentAt));
     $emailSendReceive->setStatus(EmailSendReceive::STATUS_SANDED);
     $emailSendReceiveColl = new EmailSendReceiveCollection();
     $emailSendReceiveColl->add($emailSendReceive);
     $this->getPersistCollection()->persist($emailSendReceiveColl);
     $this->getPersistCollection()->flush();
 }
 /**
  * @param EmailSendReceive $emailSendCheckI
  *
  * @throws EmailReceiveCheckException
  */
 private function performReceive(EmailSendReceive $emailSendCheckI)
 {
     try {
         $mails = $this->getMailbox()->searchMailbox(sprintf('FROM %s SUBJECT "%s"', $emailSendCheckI->getFrom(), $emailSendCheckI->getSubject()));
         $this->timeReceiveCheck($emailSendCheckI);
         if (count($mails) > 0) {
             $this->deleteReceivedEmails($mails, $emailSendCheckI);
         }
     } catch (ImapException $e) {
         $emailSendCheckI->setStatus(EmailSendReceive::STATUS_RECEIVED_ERROR);
         throw EmailReceiveCheckException::internalProblem($e);
     }
 }