Add a more sophisticated UTF-8 test case
Add a new test message to verify Lacre's behaviour when processing UTF-8 messages with text in two different scripts (latin-based and cyrillic). Also: log Content-Transfer-Encoding when logging headers is enabled.
This commit is contained in:
parent
a6e3dc3d3c
commit
6b7255bb80
|
@ -68,7 +68,8 @@ class MailEncryptionProxy:
|
||||||
def _extract_headers(self, message: email.message.Message):
|
def _extract_headers(self, message: email.message.Message):
|
||||||
return {
|
return {
|
||||||
'mime' : message.get_content_type(),
|
'mime' : message.get_content_type(),
|
||||||
'charsets' : message.get_charsets()
|
'charsets' : message.get_charsets(),
|
||||||
|
'cte' : message['Content-Transfer-Encoding']
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -30,7 +30,7 @@ certs: test/certs
|
||||||
|
|
||||||
[tests]
|
[tests]
|
||||||
# Number of "test-*" sections in this file, describing test cases.
|
# Number of "test-*" sections in this file, describing test cases.
|
||||||
cases: 11
|
cases: 12
|
||||||
e2e_log: test/logs/e2e.log
|
e2e_log: test/logs/e2e.log
|
||||||
e2e_log_format: %(asctime)s %(pathname)s:%(lineno)d %(levelname)s [%(funcName)s] %(message)s
|
e2e_log_format: %(asctime)s %(pathname)s:%(lineno)d %(levelname)s [%(funcName)s] %(message)s
|
||||||
e2e_log_datefmt: %Y-%m-%d %H:%M:%S
|
e2e_log_datefmt: %Y-%m-%d %H:%M:%S
|
||||||
|
@ -102,3 +102,9 @@ descr: Non-ASCII message (ISO-8859-2; yields quoted-printable)
|
||||||
to: carlos@disposlab
|
to: carlos@disposlab
|
||||||
in: test/msgin/nonascii.msg
|
in: test/msgin/nonascii.msg
|
||||||
out: =A3=A1CZNO=A6=C6.
|
out: =A3=A1CZNO=A6=C6.
|
||||||
|
|
||||||
|
[case-12]
|
||||||
|
descr: Russian, with UTF-8, producing Base64
|
||||||
|
to: carlos@disposlab
|
||||||
|
in: test/msgin/Lorem_ipsum_ru.eml
|
||||||
|
out: 0KHQvtCy0YDQtdC80
|
||||||
|
|
|
@ -0,0 +1,43 @@
|
||||||
|
Content-Type: multipart/alternative;
|
||||||
|
boundary="------------6s7R3c0y2W8qiD7cU3iWyXcw"
|
||||||
|
Date: Wed, 23 Nov 2022 08:06:29 +0100
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Language: pl-PL
|
||||||
|
From: Sender <lukas@lacre.io>
|
||||||
|
To: carlos@disposlab
|
||||||
|
Subject: Lorem ipsum...
|
||||||
|
|
||||||
|
This is a multi-part message in MIME format.
|
||||||
|
--------------6s7R3c0y2W8qiD7cU3iWyXcw
|
||||||
|
Content-Type: text/plain; charset=UTF-8; format=flowed
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Современная литература - это всемирное культурное богатство, наследие
|
||||||
|
всех людей, которые находят вдохновение в книгах. Читать - значит жить,
|
||||||
|
вникать в поток мыслей других.
|
||||||
|
|
||||||
|
Współczesna literatura to światowe bogactwo kulturowe, dziedzictwo
|
||||||
|
wszystkich ludzi, którzy znajdują inspirację w książkach. Czytać to żyć,
|
||||||
|
zagłębiać się w przepływ myśli innych.
|
||||||
|
|
||||||
|
--------------6s7R3c0y2W8qiD7cU3iWyXcw
|
||||||
|
Content-Type: text/html; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
|
||||||
|
</head>
|
||||||
|
<body text="#dcdcdc" bgcolor="#3b3b3b">
|
||||||
|
<p>Современная литература - это всемирное культурное богатство,
|
||||||
|
наследие всех людей, которые находят вдохновение в книгах. Читать
|
||||||
|
- значит жить, вникать в поток мыслей других.<br>
|
||||||
|
<br>
|
||||||
|
Współczesna literatura to światowe bogactwo kulturowe, dziedzictwo
|
||||||
|
wszystkich ludzi, którzy znajdują inspirację w książkach. Czytać
|
||||||
|
to żyć, zagłębiać się w przepływ myśli innych.<br>
|
||||||
|
</p>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
|
--------------6s7R3c0y2W8qiD7cU3iWyXcw--
|
Loading…
Reference in New Issue