Ejemplo n.º 1
0
 public function testSearch()
 {
     $search = new SearchExpression();
     $condition = new To('*****@*****.**');
     $search->addCondition($condition);
     $messages = $this->mailbox->getMessages($search);
     $this->assertEquals('Message 1', $messages->current()->getSubject());
 }
Ejemplo n.º 2
0
 public function testBcc()
 {
     $raw = "Subject: Undisclosed recipients\r\n";
     $this->mailbox->addMessage($raw);
     $message = $this->mailbox->getMessage(1);
     $this->assertEquals('Undisclosed recipients', $message->getSubject());
     $this->assertCount(0, $message->getTo());
 }
Ejemplo n.º 3
0
 /**
  * @dataProvider getAttachmentFixture
  */
 public function testGetAttachments()
 {
     $this->mailbox->addMessage($this->getFixture('attachment_encoded_filename'));
     $message = $this->mailbox->getMessage(1);
     $this->assertCount(1, $message->getAttachments());
     $attachment = $message->getAttachments()[0];
     $this->assertEquals('Prostřeno_2014_poslední volné termíny.xls', $attachment->getFilename());
 }
Ejemplo n.º 4
0
 /**
  * @group embeddedMessage
  */
 public function testEmbeddedAttachment()
 {
     $raw = $this->getFixture("testemail");
     $this->mailbox->addMessage($raw);
     $embeddedMessage = $this->mailbox->getMessage(1)->getAttachments()[0]->getEmbeddedMessage();
     $embeddedAttachment = $embeddedMessage->getAttachments()[0];
     $this->assertEquals('testfile.txt', $embeddedAttachment->getFilename());
     $this->assertEquals(27, $embeddedAttachment->getSize());
     $this->assertEquals('attachment', $embeddedAttachment->getDisposition());
     $this->assertEquals(null, $embeddedAttachment->getBoundary());
     $this->assertEquals('', $embeddedAttachment->getCharset());
     $this->assertEquals('IHRoaXMgaXMgY29udGVudCBvZiB0ZXN0IGZpbGU=', $embeddedAttachment->getContent());
     $this->assertEquals('base64', $embeddedAttachment->getContentTransferEncoding());
     $this->assertEquals('text/plain', $embeddedAttachment->getContentType());
     $this->assertEquals(' this is content of test file', $embeddedAttachment->getDecodedContent());
     $this->assertEquals('testfile.txt', $embeddedAttachment->getName());
     $this->assertFalse($embeddedAttachment->isEmbeddedMessage());
 }
Ejemplo n.º 5
0
 public function deleteMailbox(Mailbox $mailbox)
 {
     if (false === imap_deletemailbox($this->resource, $this->server . $mailbox->getName())) {
         throw new Exception('Mailbox ' . $mailbox->getName() . ' could not be deleted');
     }
     $this->mailboxes = $this->mailboxNames = null;
 }
Ejemplo n.º 6
0
 /**
  * Move message to another mailbox
  * @param Mailbox $mailbox
  *
  * @throws MessageMoveException
  * @return Message
  */
 public function move(Mailbox $mailbox)
 {
     if (!imap_mail_move($this->stream, $this->messageNumber, $mailbox->getName(), \CP_UID)) {
         throw new MessageMoveException($this->messageNumber, $mailbox->getName());
     }
     return $this;
 }
Ejemplo n.º 7
0
 public function testSearchNoResults()
 {
     $search = new SearchExpression();
     $search->addCondition(new To('*****@*****.**'));
     $this->assertCount(0, $this->mailbox->getMessages($search));
 }
Ejemplo n.º 8
0
 protected function createTestMessage(Mailbox $mailbox, $subject = 'Don\'t panic!', $contents = 'Don\'t forget your towel', $from = '*****@*****.**', $to = '*****@*****.**')
 {
     $message = "From: {$from}\r\n" . "To: {$to}\r\n" . "Subject: {$subject}\r\n" . "\r\n" . "{$contents}";
     $mailbox->addMessage($message);
 }