You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
2.1 KiB
55 lines
2.1 KiB
# coding: utf-8 |
|
r""" |
|
# Tests for the django.core.mail. |
|
|
|
>>> from django.core.mail import EmailMessage |
|
>>> from django.utils.translation import ugettext_lazy |
|
|
|
# Test normal ascii character case: |
|
|
|
>>> email = EmailMessage('Subject', 'Content', 'from@example.com', ['to@example.com']) |
|
>>> message = email.message() |
|
>>> message['Subject'].encode() |
|
'Subject' |
|
>>> message.get_payload() |
|
'Content' |
|
>>> message['From'] |
|
'from@example.com' |
|
>>> message['To'] |
|
'to@example.com' |
|
|
|
# Test multiple-recipient case |
|
|
|
>>> email = EmailMessage('Subject', 'Content', 'from@example.com', ['to@example.com','other@example.com']) |
|
>>> message = email.message() |
|
>>> message['Subject'].encode() |
|
'Subject' |
|
>>> message.get_payload() |
|
'Content' |
|
>>> message['From'] |
|
'from@example.com' |
|
>>> message['To'] |
|
'to@example.com, other@example.com' |
|
|
|
# Test for header injection |
|
|
|
>>> email = EmailMessage('Subject\nInjection Test', 'Content', 'from@example.com', ['to@example.com']) |
|
>>> message = email.message() |
|
Traceback (most recent call last): |
|
... |
|
BadHeaderError: Header values can't contain newlines (got u'Subject\nInjection Test' for header 'Subject') |
|
|
|
>>> email = EmailMessage(ugettext_lazy('Subject\nInjection Test'), 'Content', 'from@example.com', ['to@example.com']) |
|
>>> message = email.message() |
|
Traceback (most recent call last): |
|
... |
|
BadHeaderError: Header values can't contain newlines (got u'Subject\nInjection Test' for header 'Subject') |
|
|
|
# Test for space continuation character in long (ascii) subject headers (#7747) |
|
|
|
>>> email = EmailMessage('Long subject lines that get wrapped should use a space continuation character to get expected behaviour in Outlook and Thunderbird', 'Content', 'from@example.com', ['to@example.com']) |
|
>>> message = email.message() |
|
>>> message.as_string() |
|
'Content-Type: text/plain; charset="utf-8"\nMIME-Version: 1.0\nContent-Transfer-Encoding: quoted-printable\nSubject: Long subject lines that get wrapped should use a space continuation\n character to get expected behaviour in Outlook and Thunderbird\nFrom: from@example.com\nTo: to@example.com\nDate: ...\nMessage-ID: <...>\n\nContent' |
|
|
|
"""
|
|
|