diff options
author | sterni <sternenseemann@systemli.org> | 2023-05-18T15·53+0200 |
---|---|---|
committer | clbot <clbot@tvl.fyi> | 2023-05-18T16·18+0000 |
commit | 7f99eb44a5c734dba27682025f0dbdc253a7cabd (patch) | |
tree | 34c785cfefed3464e13bba9e5f6c232c21f749da /third_party/lisp | |
parent | 8fa67a0d6f7f6477a9f8ccb13f087128abfbc524 (diff) |
test(3p/lisp/mime4cl): test decoding RFC2047 examples r/6158
Change-Id: I32abb00e8cec697adb45b9a175cd753e807d33d5 Reviewed-on: https://cl.tvl.fyi/c/depot/+/8588 Reviewed-by: sterni <sternenseemann@systemli.org> Autosubmit: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI
Diffstat (limited to 'third_party/lisp')
-rw-r--r-- | third_party/lisp/mime4cl/endec.lisp | 2 | ||||
-rw-r--r-- | third_party/lisp/mime4cl/package.lisp | 1 | ||||
-rw-r--r-- | third_party/lisp/mime4cl/test/endec.lisp | 21 |
3 files changed, 22 insertions, 2 deletions
diff --git a/third_party/lisp/mime4cl/endec.lisp b/third_party/lisp/mime4cl/endec.lisp index d6f5ee5c79c4..2e282c237822 100644 --- a/third_party/lisp/mime4cl/endec.lisp +++ b/third_party/lisp/mime4cl/endec.lisp @@ -650,7 +650,7 @@ sequence, a charset string indicating the original coding." (defun decode-RFC2047 (text) "Decode TEXT into a fully decoded string. Whenever a non ASCII part is - encountered, try to decode it using babel, otherwise signal an error." + encountered, try to decode it using flexi-streams, otherwise signal an error." (flet ((decode-part (part) (etypecase part (cons (flexi-streams:octets-to-string diff --git a/third_party/lisp/mime4cl/package.lisp b/third_party/lisp/mime4cl/package.lisp index 3b457410dfd7..94b9e6b39053 100644 --- a/third_party/lisp/mime4cl/package.lisp +++ b/third_party/lisp/mime4cl/package.lisp @@ -69,6 +69,7 @@ #:encode-base64-stream #:encode-base64-sequence #:parse-RFC2047-text + #:decode-RFC2047 #:parse-RFC822-header #:read-RFC822-headers #:time-RFC822-string diff --git a/third_party/lisp/mime4cl/test/endec.lisp b/third_party/lisp/mime4cl/test/endec.lisp index 07e7abbf9e43..6b22b3f6a287 100644 --- a/third_party/lisp/mime4cl/test/endec.lisp +++ b/third_party/lisp/mime4cl/test/endec.lisp @@ -116,7 +116,26 @@ line") (deftest RFC2047.1 (parse-RFC2047-text "foo bar") ("foo bar")) -;; TODO(sterni): more RFC2047 test cases + +;; from RFC2047 section 8 +(deftest RFC2047.2 + (decode-RFC2047 "=?US-ASCII?Q?Keith_Moore?= <moore@cs.utk.edu>") + "Keith Moore <moore@cs.utk.edu>") + +;; from RFC2047 section 8 +(deftest RFC2047.3 + (decode-RFC2047 "=?ISO-8859-1?Q?Olle_J=E4rnefors?=") + "Olle Järnefors") + +;; from RFC2047 section 8 +(deftest RFC2047.4 + (decode-RFC2047 "Nathaniel Borenstein <nsb@thumper.bellcore.com> (=?iso-8859-8?b?7eXs+SDv4SDp7Oj08A==?=)") + "Nathaniel Borenstein <nsb@thumper.bellcore.com> (םולש ןב ילטפנ)") + +;; from RFC2047 section 8 +(deftest RFC2047.5 + (decode-RFC2047 "=?ISO-8859-1?Q?Keld_J=F8rn_Simonsen?= <keld@dkuug.dk>") + "Keld Jørn Simonsen <keld@dkuug.dk>") (defun perftest-encoder (encoder-class &optional (megs 100)) (declare (optimize (speed 3) (debug 0) (safety 0)) |