/**
  * @param $message
  * @return MailWrappedMessage
  * @throws MailWrapperSetupException
  */
 public static function getWrappedMessage($message)
 {
     switch (true) {
         case $message instanceof MailWrappedMessage:
             return $message;
         case $message instanceof Message:
             return MessageTransformerZend::toWrappedMessage($message);
         case $message instanceof MessageBuilder:
             return MessageTransformerMailgun::toWrappedMessage($message);
         case $message instanceof \PHPMailer:
             return MessageTransformerPhpMailer::toWrappedMessage($message);
         case $message instanceof \Swift_Message:
             return MessageTransformerSwift::toWrappedMessage($message);
         default:
             throw new MailWrapperSetupException('No Message Converter');
     }
 }
 /**
  *
  */
 public function testValidTo()
 {
     $wrappedMessage = TesterWrappedMessage::getValid();
     $message = MessageTransformerSwift::fromWrappedMessage($wrappedMessage);
     $this->assertInstanceOf('\\Swift_Message', $message);
     $this->assertCount(2, $message->getTo());
     $this->assertCount(2, $message->getCc());
     $this->assertCount(2, $message->getBcc());
     $this->assertGreaterThan(0, strlen($message->getSubject()));
     $this->assertGreaterThan(0, strlen($message->getBody()));
 }