       (str out))))
 
 (defn add-recipient! [jmsg rtype addr]
-  (try
-    (doto jmsg (.addRecipient rtype (InternetAddress. addr)))
-    (catch AddressException _)))
+  (if-let [addr (make-address addr)]
+    (doto jmsg
+      (.addRecipient rtype addr))
+    jmsg))
 
 (defn add-recipients! [jmsg rtype addrs]
   (when addrs

(defn sender [msg]
  (or (:sender msg) (:from msg)))

(defn message->str [msg]
  (with-open [out (java.io.ByteArrayOutputStream.)]
    (let [jmsg (if (instance? MimeMessage msg) msg (make-jmessage msg))]

         (add-recipients! Message$RecipientType/TO (:to msg))
         (add-recipients! Message$RecipientType/CC (:cc msg))
         (add-recipients! Message$RecipientType/BCC (:bcc msg))
         (.setFrom (make-address (:from msg)))
         (.setSubject (:subject msg))
         (.setSentDate (or (:date msg) (make-date)))
         (add-extra! (drop-keys msg standard))
         (add-body! (:body msg))))))

(defn make-fixture [from to & {:keys [tag]}]
