/** * @covers \ZfExtra\Mail\Message::__call * @covers \ZfExtra\Mail\Message::setAddresses * @covers \ZfExtra\Mail\Message::addAddresses * @covers \ZfExtra\Mail\Message::getAddresses */ public function testAddTo() { $message = new Message(); $message->setTo('*****@*****.**'); $this->assertInstanceOf(AddressList::class, $message->getTo()); $this->assertCount(1, $message->getTo()); $this->assertEquals('*****@*****.**', $message->getTo()->current()->getEmail()); $message = new Message(); $message->addTo('*****@*****.**', 'example'); $this->assertEquals('*****@*****.**', $message->getTo()->current()->getEmail()); $this->assertEquals('example', $message->getTo()->current()->getName()); $message = new Message(); $message->addTo(array('*****@*****.**', '*****@*****.**')); $this->assertCount(2, $message->getTo()); $this->assertEquals('*****@*****.**', $message->getTo()->current()->getEmail()); $this->assertEquals('*****@*****.**', $message->getTo()->next()->getEmail()); $message = new Message(); $message->addTo(array('*****@*****.**' => 'example', '*****@*****.**')); $this->assertCount(2, $message->getTo()); $this->assertEquals('*****@*****.**', $message->getTo()->current()->getEmail()); $this->assertEquals('example', $message->getTo()->current()->getName()); $this->assertEquals('*****@*****.**', $message->getTo()->next()->getEmail()); $addresses = new AddressList(); $addresses->add('*****@*****.**'); $message = new Message(); $message->addTo($addresses); $this->assertEquals('*****@*****.**', $message->getTo()->current()->getEmail()); $address = new Address('*****@*****.**'); $message = new Message(); $message->addTo($address); $this->assertEquals('*****@*****.**', $message->getTo()->current()->getEmail()); }
/** * * @param Message $message * @return ZendMessage */ public static function convert(Message $message) { $mailMessage = new ZendMessage(); $mailMessage->setSubject($message->getSubject()); $mailMessage->setFrom($message->getFrom()); $mailMessage->setTo($message->getTo()); $mailMessage->setCc($message->getCc()); $mailMessage->setBcc($message->getBcc()); $mailMessage->setReplyTo($message->getReplyTo()); $mailMessage->getHeaders()->addHeaders($message->getHeaders()); if ($mailMessage->getSender()) { $mailMessage->setSender($message->getSender()); } if ($message->isMultipart()) { $mimePart = new MimeMessage(); if ($message->getBodyHtml()) { $part = new Part($message->getBodyHtml()); $part->charset = $message->getCharset(); $part->encoding = $message->getEncoding(); $part->type = Mime::TYPE_HTML; $mimePart->addPart($part); } if ($message->getBodyText()) { $part = new Part($message->getBodyText()); $part->charset = $message->getCharset(); $part->encoding = $message->getEncoding(); $part->type = Mime::TYPE_TEXT; $mimePart->addPart($part); } foreach ($message->getAttachments() as $attachment) { $mimePart->addPart($attachment->asMimePart()); } foreach ($message->getParts() as $part) { $mimePart->addPart($part); } $mailMessage->setBody($mimePart); } else { $mailMessage->getHeaders()->addHeaderLine('Content-Type', $message->getContentType()); $mailMessage->setEncoding($message->getEncoding()); $mailMessage->setBody($message->getFilledBody()); } return $mailMessage; }