Skip to content

Commit

Permalink
email address parser tests
Browse files Browse the repository at this point in the history
  • Loading branch information
deadtrickster committed Dec 1, 2015
1 parent 726a8e1 commit a317836
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 1 deletion.
3 changes: 2 additions & 1 deletion cl-mail.test.asd
Expand Up @@ -21,7 +21,8 @@
:serial t
:components
((:file "package")
(:test-file "dummy"))))
(:test-file "dummy")
(:test-file "mail/fields/address"))))
:defsystem-depends-on (:prove-asdf)
:perform (test-op :after (op c)
(funcall (intern #.(string :run-test-system) :prove-asdf) c)))
34 changes: 34 additions & 0 deletions t/mail/fields/address.lisp
@@ -0,0 +1,34 @@
(in-package :cl-mail.test)

(plan 1)

(subtest "Address parsing"

(subtest "Malformed addresses"
(is-error (cl-mail:mail-address.new "\"-Earnings...Notification-\" <vodacom.co.rs>") error))

(subtest "Just address"
(let ((address (mail-address.new "test1@test.net")))
(is (mail-address-display-name address) nil)
(is (mail-address-address address) "test1@test.net")
(is (mail-address-host address) "test.net")
(is (mail-address-user address) "test1")
(is (mail-address-comments address) nil)))

(subtest "Display name and address"
(let ((address (mail-address.new "Test Test <test1@test.net>")))
(is (mail-address-display-name address) "Test Test")
(is (mail-address-address address) "test1@test.net")
(is (mail-address-host address) "test.net")
(is (mail-address-user address) "test1")
(is (mail-address-comments address) nil)))

(subtest "Quoted display name and address"
(let ((address (mail-address.new "\"Test @ Test <<>>>\" <test1@test.net>")))
(is (mail-address-display-name address) "Test @ Test <<>>>")
(is (mail-address-address address) "test1@test.net")
(is (mail-address-host address) "test.net")
(is (mail-address-user address) "test1")
(is (mail-address-comments address) nil))))

(finalize)

0 comments on commit a317836

Please sign in to comment.