Пример #1
0
 public function testInvoke()
 {
     $repository = $this->prophesize(RepositoryInterface::class);
     $listener = new LogSending($repository->reveal());
     $event = $this->prophesize(EventInterface::class);
     $message = $this->prophesize(Message::class);
     $event->getParam('message')->willReturn($message->reveal());
     $template = $this->prophesize(Template::class);
     $event->getParam('template')->willReturn($template->reveal());
     $to = new AddressList();
     $to->addFromString('*****@*****.**');
     $message->getTo()->willReturn($to);
     $from = new AddressList();
     $from->addFromString('*****@*****.**');
     $message->getFrom()->willReturn($from);
     $message->getSubject()->willReturn('Some subject');
     $template->getLayoutId()->willReturn(Template::LAYOUT_DEFAULT);
     $template->getId()->willReturn(Template::FEEDBACK_ANSWER);
     $mimeMessage = new MimeMessage();
     $mimeMessage->addPart(new \Zend\Mime\Part('some body'));
     $message->getBody()->willReturn($mimeMessage);
     $event->getParam('data')->willReturn(['data' => 'x']);
     $repository->add(Argument::type(MailLogEntry::class));
     $listener->__invoke($event->reveal());
 }
Пример #2
0
 /**
  * Update an address list
  *
  * Proxied to this from addFrom, addTo, addCc, addBcc, and addReplyTo.
  *
  * @param  AddressList $addressList
  * @param  string|Address\AddressInterface|array|AddressList|Traversable $emailOrAddressOrList
  * @param  null|string $name
  * @param  string $callingMethod
  * @throws Exception\InvalidArgumentException
  */
 protected function updateAddressList(AddressList $addressList, $emailOrAddressOrList, $name, $callingMethod)
 {
     if ($emailOrAddressOrList instanceof Traversable) {
         foreach ($emailOrAddressOrList as $address) {
             $addressList->add($address);
         }
         return;
     }
     if (is_array($emailOrAddressOrList)) {
         $addressList->addMany($emailOrAddressOrList);
         return;
     }
     if (!is_string($emailOrAddressOrList) && !$emailOrAddressOrList instanceof Address\AddressInterface) {
         throw new Exception\InvalidArgumentException(sprintf('%s expects a string, AddressInterface, array, AddressList, or Traversable as its first argument;' . ' received "%s"', $callingMethod, is_object($emailOrAddressOrList) ? get_class($emailOrAddressOrList) : gettype($emailOrAddressOrList)));
     }
     if (is_string($emailOrAddressOrList) && $name === null) {
         $addressList->addFromString($emailOrAddressOrList);
         return;
     }
     $addressList->add($emailOrAddressOrList, $name);
 }
Пример #3
0
 /**
  * Set AddressList type header a value
  *
  * @param string $name
  * @param string $value
  */
 public function setAddressListHeader($name, $value)
 {
     /** @var AbstractAddressList $header */
     $header = $this->getHeader($name);
     $addresslist = new AddressList();
     $addresslist->addFromString($value);
     $header->setAddressList($addresslist);
 }