��Qc@s/ddlZddlZddlZddlZddlZddlZddlZddlmZddl Z ddl
mZddlm
Z
mZmZddlmZmZddlmZmZddlmZddlmZdd lmZdd
lmZddlmZddl m!Z!dd
l"m#Z#ddl$m%Z%ddl m&Z&ddl m'Z'ddl m(Z(ddl m)Z)ddl m*Z*ddl m+Z+ddl,m-Z-m.Z.ddl/m0Z1dZ2dZ3dZ4dd�Z5dej6fd��YZ7de7fd��YZ8d ej6fd!��YZ9d"e7fd#��YZ:d$ej6fd%��YZ;d&ej6fd'��YZ<d(ej6fd)��YZ=d*ej6fd+��YZ>d,ej6fd-��YZ?d.e7fd/��YZ@d0e7fd1��YZAd2ej6fd3��YZBd4e7fd5��YZCd6e7fd7��YZDd8e7fd9��YZEd:e7fd;��YZFd<e7fd=��YZGd>ej6fd?��YZHd@ej6fdA��YZIdBej6fdC��YZJdDe7fdE��YZKdFe7fdG��YZLdH�ZMdI�ZNdJ�ZOePdKkr+ejQdLdM�ndS(Ni�N(tStringIO(tCharset(tHeadert
decode_headertmake_header(tParsertHeaderParser(t GeneratortDecodedGenerator(tMessage(tMIMEApplication(t MIMEAudio(tMIMEText(t MIMEImage(tMIMEBase(tMIMEMessage(t
MIMEMultipart(tutils(terrors(tencoders(t iterators(t
base64mime(t
quoprimime(tfindfiletrun_unittest(t__file__s
tt trcCs1tjjtjjt�d|�}t||�S(Ntdata(tostpathtjointdirnametlandmarktopen(tfilenametmodeR((s3/sys/lib/python2.7/email/test/test_email_renamed.pytopenfile-s$t
TestEmailBasecBseZd�Zd�ZRS(cCs}||kryt|�}t|�}tj|j�|j��}t�}|tItj|�IJ|j|j��ndS(s6Like assertEqual except use ndiff for readable output.N( tstrtdifflibtndifft
splitlinesRtNLR tfailureExceptiontgetvalue(tselftfirsttsecondtsfirsttssecondtdifftfp((s3/sys/lib/python2.7/email/test/test_email_renamed.pytndiffAssertEqual5s cCs7tt|��}ztj|�}Wd|j�X|S(N(R&Rtemailtmessage_from_filetclose(R/R$R5tmsg((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt_msgobj?s
(t__name__t
__module__R6R;(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR'4s
tTestMessageAPIcBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d �Z"d!�Z#d"�Z$d#�Z%d$�Z&d%�Z'd&�Z(d'�Z)d(�Z*d)�Z+d*�Z,d+�Z-d,�Z.d-�Z/d.�Z0d/�Z1d0�Z2d1�Z3d2�Z4RS(3cCsT|j}|jd�}||jd�dddg�||jdd�d�dS(Ns
msg_20.txttccsccc@zzz.orgsddd@zzz.orgseee@zzz.orgtxxsn/a(tassertEqualR;tget_all(R/teqR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_allKs cCsL|j}t�}||j�d�td�}|j|�||dd�||j�d�||dd�||jd�d�||dd �||j�jd�|jd�||j�d�||dd�t�}d
|d<d|d
<d|d<|j|�||dd
�||dd�||dd�dS(Ns
iso-8859-1smime-versions1.0s
text/plainscontent-types text/plain; charset="iso-8859-1"tcharsetscontent-transfer-encodingsquoted-printables2.0sMIME-Versionstext/x-weirdsContent-Typesquinted-puntablesContent-Transfer-Encodings"text/x-weird; charset="iso-8859-1"( RAR tget_charsettNoneRtset_charsettget_content_typet get_paramt
input_charset(R/RCR:RE((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_getset_charsetQs,
cCsJ|j}t�}|jd�||j�jd�||dd�dS(Nsus-asciiscontent-typestext/plain; charset="us-ascii"(RAR RHRFRK(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_set_charset_from_stringks
cCsBt�}td�}|jd|�|j|j�jd�dS(Ns
iso-8859-1sThis is a string payload(R Rtset_payloadRARFRK(R/R:RE((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_set_payload_with_charsetrs c
Cs�|j}|jd�}|j�}||dddddg�|jd�}|jd�}||dddddg�|jd�}|j�}||dddddd ddg�dS(
Ns
msg_08.txtsus-asciis
iso-8859-1s
iso-8859-2skoi8-rs
msg_09.txttdingbats
msg_12.txts
iso-8859-3(RAR;tget_charsetsRG(R/RCR:tcharsets((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_charsetsxs
cCs�|j}|jd�}g|j�D]}|j�^q%}||ddg�|jd�}|jd�}||j�d�dS(Ns
msg_04.txtsmsg.txts
msg_07.txtisdingusfish.gif(RAR;tget_payloadtget_filename(R/RCR:tpt filenamestsubpart((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_filename�s %cCsT|j}|jd�}g|j�D]}|j�^q%}||ddg�dS(Ns
msg_44.txtsmsg.txt(RAR;RTRU(R/RCR:RVRW((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt%test_get_filename_with_name_parameter�s %cCs/|j}|jd�}||j�d�dS(Ns
msg_07.txttBOUNDARY(RAR;tget_boundary(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_boundary�s cCs�|j}|jd�}|jd�|j�d\}}||j�d�||d�|jd�}|jd�|j�d\}}||j�d�||d�|jd�}|jtj|jd�dS( Ns
msg_01.txtR[iscontent-types3text/plain; charset="us-ascii"; boundary="BOUNDARY"s
msg_04.txts$multipart/mixed; boundary="BOUNDARY"s
msg_03.txt(RAR;tset_boundarytitemstlowertassertRaisesRtHeaderParseError(R/RCR:theadertvalue((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_set_boundary�s
cCs�|j}|jd�}||jdt�d�||jd�jdt�d�||jd�jdt�d�||jd�jdt�d�||jd �jdt�d
�||jd�jdt�d�dS(
Ns
msg_10.txttdecodeis This is a 7bit encoded message.
is-�his is a Quoted Printable encoded message!
is!This is a Base64 encoded message.is"This is a Base64 encoded message.
is/This has no Content-Transfer-Encoding: header.
(RAR;RTtTrueRG(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_decoded_payload�s cCs}|j}t�}|jd�x1d
D])}||d<||jdt�d�q&W|jd �||jdt�d �dS(Ns$begin 666 -
+:&5L;&\@=V]R;&0
end
s
x-uuencodetuuencodetuuesx-uuescontent-transfer-encodingRfshello worldtfoo(s
x-uuencodeRiRjsx-uue(RAR RNRTRg(R/RCR:tcte((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_decoded_uu_payload�s
cCs{|j}|jd�}td�}z|j�}Wd|j�Xt�}t|�}|j|�||j�|�dS(Ns
msg_07.txts
msg_17.txt( RAR;R&treadR9RRtflattenR.(R/RCR:R5ttexttstg((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_decoded_generator�s
cCs�t�}d|d<d|d<|jd|k�|jd|k�|jd|k�|jd|k�|jd|k�|jd|k�dS( NtMetFromtYouttotfromtFROMtTotTO(R t
assertTrue(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest__contains__�s
cCs�|j}|jd�}td�}z|j�jdd�}Wd|j�X|j||j��t|�}|j d�}|j
|djd��||tj
|d��dS(Ns
msg_01.txts Rs
isFrom i(RAR;R&RntreplaceR9R6t as_stringR(tsplitR|t
startswithR,R (R/RCR:R5Rptfullreprtlines((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_as_string�s
cCs,tjd�}|j|jd�d�dS(NsContent-Type: blarg; baz; boo
tbazR(R7tmessage_from_stringRARJ(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_bad_paramscCs)tjd�}|j|j�d�dS(Ns
From: foo
(R7R�RARURG(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_missing_filenamescCs)tjd�}|j|j�d�dS(Ns%Content-Disposition: blarg; filename
R(R7R�RARU(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_bogus_filenames cCs)tjd�}|j|j�d�dS(Ns
From: foo
(R7R�RAR\RG(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_missing_boundaryscCs�|j}tjd�}||jdd�d
ddg�tjd
�}||jdd�dddg�||j�d�tjd�}||jdd�dddg�dS(Ns&X-Header: foo=one; bar=two; baz=three
Rcsx-headerRktonetbarttwoR�tthrees X-Header: foo; bar=one; baz=two
Rs"X-Header: foo; bar="one"; baz=two
(sfooR�(R�R�(sbazR�(sfooR(R�R�(sbazR�(sfooR(R�R�(sbazR�(RAR7R�t
get_paramsRG(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_paramss cCs0t�}d|d<|j|jd�d�dS(Ns>Content-Type: Multipart/mixed; boundary = "CPIMSSMTPC06p5f3tG"sContent-TypetboundarytCPIMSSMTPC06p5f3tG(R RARJ(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_param_liberal)s
cCs�|j}tjd�}||jddd�d�||jddd�d�||jd�d�tjd�}||jddd�d �||jddd�d
�||jddd�d�dS(Ns&X-Header: foo=one; bar=two; baz=three
R�Rcsx-headerR�tquuzs"X-Header: foo; bar="one"; baz=two
RkRR�R�(RAR7R�RJRG(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_param.s cCs5|jd�}|j|jd�jd�d�dS(Ns
msg_22.txtitnames
wibble.JPG(R;RARTRJ(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt'test_get_param_funky_continuation_lines?scCsKtjd�}|j|jd�d�|j|jddt�d�dS(Ns4Content-Type: image/pjpeg; name="Jim&&Jill"
R�sJim&&Jilltunquotes"Jim&&Jill"(R7R�RARJtFalse(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt#test_get_param_with_semis_in_quotesCs
cCsktjd�}|j|jd��|j|jd��|j|jd��|j|jd��dS(NsHeader: existsRcRtHEADERtheaderi(R7R�R|thas_keytassertFalse(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_has_keyJs
cCs�|j}t�}|jdd�||jd�d�|jdd�||jd�d�||jddt�d�||j�d
ddg�||jdt�dddg�|jdd
dd�||jddd�d
�dS(NREsiso-2022-jpt
importances
high valueR�s"high value"s
text/plainRs
"iso-2022-jp"siso-9999-xxRcsX-Jimmy(s
text/plainR(scharsetsiso-2022-jp(R�s
high value(s
text/plainR(scharsets
"iso-2022-jp"(R�s"high value"(RAR t set_paramRJR�R�(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_set_paramQs
cCs�|j}|jd�}||j�dd d
g�|jd�}|jd�||j�ddg�|jd|�||j�d
dd|fg�dS(Ns
msg_05.txtsmultipart/reportRsreport-typesdelivery-statusR�s%D1690A7AC1.996856090/mail.example.com(smultipart/reportR(sreport-typesdelivery-status(sboundarys%D1690A7AC1.996856090/mail.example.com(smultipart/reportR(sboundarys%D1690A7AC1.996856090/mail.example.com(smultipart/reportR(sboundarys%D1690A7AC1.996856090/mail.example.com(RAR;R�RJt del_paramR�(R/RCR:told_val((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_del_parambs
cCsGt�}|jdddd�|jdd�|j|dd�dS(NsContent-Dispositiont
attachmentR$sbud.gifscontent-disposition(R t
add_headerR�RA(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_del_param_on_other_headerss cCs�|j}t�}|jt|jd�|jd�||dd�|jdd�||dd�|jd�||dd�dS( NRps
text/plainscontent-typeREsus-asciistext/plain; charset="us-ascii"s text/htmlstext/html; charset="us-ascii"(RAR Rat
ValueErrortset_typeR�(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt
test_set_typeys
cCs;t�}d|d<|jdd�|j|dd�dS(Ns
text/plainsX-Content-Typesapplication/octet-streamsx-content-type(R R�RA(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_set_type_on_other_header�s
cCs#t�}|j|j�d�dS(Ns
text/plain(R RARI(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_content_type_missing�s cCs0t�}|jd�|j|j�d�dS(Nsmessage/rfc822(R tset_default_typeRARI(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt/test_get_content_type_missing_with_default_type�s
cCs2|jd�}|j|jd�j�d�dS(Ns
msg_30.txtismessage/rfc822(R;RARTRI(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt+test_get_content_type_from_message_implicit�scCs2|jd�}|j|jd�j�d�dS(Ns
msg_28.txtismessage/rfc822(R;RARTRI(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt+test_get_content_type_from_message_explicit�scCs)|jd�}|j|j�d�dS(Ns
msg_03.txts
text/plain(R;RARI(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt6test_get_content_type_from_message_text_plain_implicit�scCs)|jd�}|j|j�d�dS(Ns
msg_01.txts
text/plain(R;RARI(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt6test_get_content_type_from_message_text_plain_explicit�scCs#t�}|j|j�d�dS(NRp(R RAtget_content_maintype(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt!test_get_content_maintype_missing�s cCs0t�}|jd�|j|j�d�dS(Nsmessage/rfc822tmessage(R R�RAR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt3test_get_content_maintype_missing_with_default_type�s
cCs2|jd�}|j|jd�j�d�dS(Ns
msg_30.txtiR�(R;RARTR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt/test_get_content_maintype_from_message_implicit�scCs2|jd�}|j|jd�j�d�dS(Ns
msg_28.txtiR�(R;RARTR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt/test_get_content_maintype_from_message_explicit�scCs)|jd�}|j|j�d�dS(Ns
msg_03.txtRp(R;RAR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt:test_get_content_maintype_from_message_text_plain_implicit�scCs)|jd�}|j|j�d�dS(Ns
msg_01.txtRp(R;RAR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt:test_get_content_maintype_from_message_text_plain_explicit�scCs#t�}|j|j�d�dS(Ntplain(R RAtget_content_subtype(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt test_get_content_subtype_missing�s cCs0t�}|jd�|j|j�d�dS(Nsmessage/rfc822trfc822(R R�RAR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt2test_get_content_subtype_missing_with_default_type�s
cCs2|jd�}|j|jd�j�d�dS(Ns
msg_30.txtiR�(R;RARTR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt.test_get_content_subtype_from_message_implicit�scCs2|jd�}|j|jd�j�d�dS(Ns
msg_28.txtiR�(R;RARTR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt.test_get_content_subtype_from_message_explicit�scCs)|jd�}|j|j�d�dS(Ns
msg_03.txtR�(R;RAR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt9test_get_content_subtype_from_message_text_plain_implicit�scCs)|jd�}|j|j�d�dS(Ns
msg_01.txtR�(R;RAR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt9test_get_content_subtype_from_message_text_plain_explicit�scCs-t�}d|d<|j|j�d�dS(Nsno-slash-in-this-stringsContent-TypeRp(R RAR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_content_maintype_error�s
cCs-t�}d|d<|j|j�d�dS(Nsno-slash-in-this-stringsContent-TypeR�(R RAR�(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_get_content_subtype_error�s
cCs=|j}t�}|jdd�|jdd�|jdd�||j�dddg�||j�dddg�|jdd�||j�dddg�||j�dddg�|jdd�|jdd �||j�ddddg�||j�d dddg�|jt|jd
d�dS(NtFirsttOnetSecondtTwotThirdtThreetTwentytElevensOne HundredtFourthtMissing(RAR R�tkeystvaluestreplace_headerRatKeyError(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_replace_header�s cCsPd}t�}d|d<d|d<|j|�|j|jdt�|�dS(NsAwDp0P7//y6LwKEAcPa/6Q=9saudio/x-midiscontent-typetbase64scontent-transfer-encodingRf(R RNRARTRg(R/txR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_broken_base64_payload�s
(5R<R=RDRLRMRORSRYRZR]ReRhRmRsR}R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR>Jsf
tTestEncoderscBs#eZd�Zd�Zd�ZRS(cCs4|j}t�}|jd�||dd�dS(Nsus-asciiscontent-transfer-encodingt7bit(RAR RH(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_encode_empty_payload�s
cCs*|j}td�}||dd�dS(Nshello worldscontent-transfer-encodingR�(RAR(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_default_ctes cCsj|j}td�}||dd�td�}||dd�tddd�}||dd�dS( Nshello worldscontent-transfer-encodingR�s
hello �rldt8bitt_charsets
iso-8859-1squoted-printable(RAR(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR� s (R<R=R�R�(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR��s tTestLongHeaderscBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(cCsQ|j}tjd�}t�}t|�}|j|�||j�d�dS(Ns�Subject: bug demonstration
12345678911234567892123456789312345678941234567895123456789612345678971234567898112345678911234567892123456789112345678911234567892123456789
more text
test
s�Subject: bug demonstration
12345678911234567892123456789312345678941234567895123456789612345678971234567898112345678911234567892123456789112345678911234567892123456789
more text
test
(R6R7R�RRRoR.(R/RCR:tsfpRr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_split_long_continuations
cCsW|j}d}t|dd�}||j�d�t|�}||j�d�dS(Ns�bug demonstration
12345678911234567892123456789312345678941234567895123456789612345678971234567898112345678911234567892123456789112345678911234567892123456789
more texttcontinuation_wss s�bug demonstration
12345678911234567892123456789312345678941234567895123456789612345678971234567898112345678911234567892123456789112345678911234567892123456789
more text(R6Rtencode(R/RCthstrth((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt,test_another_long_almost_unsplittable_header-s cCs�|j}td�}td�}td�}d}d}djd�}t||dd�}|j||�|j||�t�} || d<t�}
t|
�}|j| �||
j �d �||j�d
�dS(Ns
iso-8859-1s
iso-8859-2sutf-8s�Die Mieter treten hier ein werden mit einem Foerderband komfortabel den Korridor entlang, an s�ndischen Wandgem�en vorbei, gegen die rotierenden Klingen bef�rt. s;Finan� metropole se hroutily pod tlakem jejich d�pu.. u�正確に言うと翻訳はされていません。一部はドイツ語ですが、あとはでたらめです。実際には「Wenn ist das Nunstuck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput.」と言っています。theader_nametSubjectsSubject: =?iso-8859-1?q?Die_Mieter_treten_hier_ein_werden_mit_einem_Foerd?=
=?iso-8859-1?q?erband_komfortabel_den_Korridor_entlang=2C_an_s=FCdl=FCndi?=
=?iso-8859-1?q?schen_Wandgem=E4lden_vorbei=2C_gegen_die_rotierenden_Kling?=
=?iso-8859-1?q?en_bef=F6rdert=2E_?= =?iso-8859-2?q?Finan=E8ni_met?=
=?iso-8859-2?q?ropole_se_hroutily_pod_tlakem_jejich_d=F9vtipu=2E=2E_?=
=?utf-8?b?5q2j56K644Gr6KiA44GG44Go57+76Kiz44Gv44GV44KM44Gm44GE?=
=?utf-8?b?44G+44Gb44KT44CC5LiA6YOo44Gv44OJ44Kk44OE6Kqe44Gn44GZ44GM44CB?=
=?utf-8?b?44GC44Go44Gv44Gn44Gf44KJ44KB44Gn44GZ44CC5a6f6Zqb44Gr44Gv44CM?=
=?utf-8?q?Wenn_ist_das_Nunstuck_git_und_Slotermeyer=3F_Ja!_Beiherhund_das?=
=?utf-8?b?IE9kZXIgZGllIEZsaXBwZXJ3YWxkdCBnZXJzcHV0LuOAjeOBqOiogOOBow==?=
=?utf-8?b?44Gm44GE44G+44GZ44CC?=
s�=?iso-8859-1?q?Die_Mieter_treten_hier_ein_werden_mit_einem_Foerd?=
=?iso-8859-1?q?erband_komfortabel_den_Korridor_entlang=2C_an_s=FCdl=FCndi?=
=?iso-8859-1?q?schen_Wandgem=E4lden_vorbei=2C_gegen_die_rotierenden_Kling?=
=?iso-8859-1?q?en_bef=F6rdert=2E_?= =?iso-8859-2?q?Finan=E8ni_met?=
=?iso-8859-2?q?ropole_se_hroutily_pod_tlakem_jejich_d=F9vtipu=2E=2E_?=
=?utf-8?b?5q2j56K644Gr6KiA44GG44Go57+76Kiz44Gv44GV44KM44Gm44GE?=
=?utf-8?b?44G+44Gb44KT44CC5LiA6YOo44Gv44OJ44Kk44OE6Kqe44Gn44GZ44GM44CB?=
=?utf-8?b?44GC44Go44Gv44Gn44Gf44KJ44KB44Gn44GZ44CC5a6f6Zqb44Gr44Gv44CM?=
=?utf-8?q?Wenn_ist_das_Nunstuck_git_und_Slotermeyer=3F_Ja!_Beiherhund_das?=
=?utf-8?b?IE9kZXIgZGllIEZsaXBwZXJ3YWxkdCBnZXJzcHV0LuOAjeOBqOiogOOBow==?=
=?utf-8?b?44Gm44GE44G+44GZ44CC?=(
R6RR�RtappendR RRRoR.(R/RCRrtcztutf8tg_headtcz_headt utf8_headR�R:R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_long_nonstring>s&
cCs2|j}tddd�}||j�d�dS(Nsiwasnipoop; giraffes="very-long-necked-animals"; spooge="yummy"; hippos="gargantuan"; marshmallows="gooey"R�sX-Foobar-Spoink-Defrobnitsjwasnipoop; giraffes="very-long-necked-animals";
spooge="yummy"; hippos="gargantuan"; marshmallows="gooey"(R6RR�(R/RCR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_long_header_encodeis
cCs8|j}tddddd�}||j�d�dS(Nsiwasnipoop; giraffes="very-long-necked-animals"; spooge="yummy"; hippos="gargantuan"; marshmallows="gooey"R�sX-Foobar-Spoink-DefrobnitR�s sjwasnipoop; giraffes="very-long-necked-animals";
spooge="yummy"; hippos="gargantuan"; marshmallows="gooey"(R6RR�(R/RCR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt-test_long_header_encode_with_tab_continuationrs cCsX|j}td�}d|d<t�}t|�}|j|�||j�d�dS(NRsiwasnipoop; giraffes="very-long-necked-animals"; spooge="yummy"; hippos="gargantuan"; marshmallows="gooey"sX-Foobar-Spoink-Defrobnits�Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
X-Foobar-Spoink-Defrobnit: wasnipoop; giraffes="very-long-necked-animals";
spooge="yummy"; hippos="gargantuan"; marshmallows="gooey"
(R6RRRRoR.(R/RCR:R�Rr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_header_splitter|s
cCs�|j}t�}d|d<tjgtd�D]}d|^q/�|d<|jd�t�}t|�}|j|�||j �d�dS(Nstest@dom.ainRui
s<%d@dom.ain>t
ReferencestTests�From: test@dom.ain
References: <0@dom.ain> <1@dom.ain> <2@dom.ain> <3@dom.ain> <4@dom.ain>
<5@dom.ain> <6@dom.ain> <7@dom.ain> <8@dom.ain> <9@dom.ain>
Test(
R6R tSPACER trangeRNRRRoR.(R/RCR:tiR�Rr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_no_semis_header_splitter�s
0
cCs@|j}ddd}t|dd�}||j�d�dS(NsReferences: R�iPR�s s\References: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(R6RR�(R/RCR�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_no_split_long_header�s
cCs8|j}d}t|dd�}||j�d�dS(NsWfrom babylon.socal-raves.org (localhost [127.0.0.1]); by babylon.socal-raves.org (Postfix) with ESMTP id B570E51B81; for <mailman-admin@babylon.socal-raves.org>; Sat, 2 Feb 2002 17:00:06 -0800 (PST)
from babylon.socal-raves.org (localhost [127.0.0.1]); by babylon.socal-raves.org (Postfix) with ESMTP id B570E51B81; for <mailman-admin@babylon.socal-raves.org>; Sat, 2 Feb 2002 17:00:06 -0800 (PST)
from babylon.socal-raves.org (localhost [127.0.0.1]); by babylon.socal-raves.org (Postfix) with ESMTP id B570E51B81; for <mailman-admin@babylon.socal-raves.org>; Sat, 2 Feb 2002 17:00:06 -0800 (PST)
R�s s_from babylon.socal-raves.org (localhost [127.0.0.1]);
by babylon.socal-raves.org (Postfix) with ESMTP id B570E51B81;
for <mailman-admin@babylon.socal-raves.org>;
Sat, 2 Feb 2002 17:00:06 -0800 (PST)
from babylon.socal-raves.org (localhost [127.0.0.1]);
by babylon.socal-raves.org (Postfix) with ESMTP id B570E51B81;
for <mailman-admin@babylon.socal-raves.org>;
Sat, 2 Feb 2002 17:00:06 -0800 (PST)
from babylon.socal-raves.org (localhost [127.0.0.1]);
by babylon.socal-raves.org (Postfix) with ESMTP id B570E51B81;
for <mailman-admin@babylon.socal-raves.org>;
Sat, 2 Feb 2002 17:00:06 -0800 (PST)(R6RR�(R/RCR�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt"test_splitting_multiple_long_lines�s
cCsD|j}d}t|dddddd�}||j�d�dS( Ns�from modemcable093.139-201-24.que.mc.videotron.ca ([24.201.139.93] helo=cthulhu.gerg.ca)
by kronos.mems-exchange.org with esmtp (Exim 4.05)
id 17k4h5-00034i-00
for test@mems-exchange.org; Wed, 28 Aug 2002 11:25:20 -0400t
maxlineleniNR�tReceivedR�s s�from modemcable093.139-201-24.que.mc.videotron.ca ([24.201.139.93]
helo=cthulhu.gerg.ca)
by kronos.mems-exchange.org with esmtp (Exim 4.05)
id 17k4h5-00034i-00
for test@mems-exchange.org; Wed, 28 Aug 2002 11:25:20 -0400(R6RR�(R/RCR�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt&test_splitting_first_line_only_is_long�s cCsU|j}t�}tdddd�}|jd�||d<||j�d�dS(NsBritische Regierung gibts
iso-8859-1R�R�s+gr� Licht f�ffshore-Windkraftprojektes�Subject: =?iso-8859-1?q?Britische_Regierung_gibt?= =?iso-8859-1?q?gr=FCnes?=
=?iso-8859-1?q?_Licht_f=FCr_Offshore-Windkraftprojekte?=
(R6R RR�R(R/RCR:R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_long_8bit_header�s
cCs3|j}t�}d|d<||j�d�dS(NsfBritische Regierung gibt gr� Licht f�ffshore-Windkraftprojekte <a-very-long-address@example.com>sReply-TosrReply-To: Britische Regierung gibt gr� Licht f�ffshore-Windkraftprojekte <a-very-long-address@example.com>
(R6R R(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt test_long_8bit_header_no_charset�s
cCs<|j}d}t�}||d<||jd�d�dS(Ns�"Someone Test #A" <someone@eecs.umich.edu>,<someone@eecs.umich.edu>,"Someone Test #B" <someone@umich.edu>, "Someone Test #C" <someone@eecs.umich.edu>, "Someone Test #D" <someone@eecs.umich.edu>Rzis�To: "Someone Test #A" <someone@eecs.umich.edu>, <someone@eecs.umich.edu>,
"Someone Test #B" <someone@umich.edu>,
"Someone Test #C" <someone@eecs.umich.edu>,
"Someone Test #D" <someone@eecs.umich.edu>
(R6R R(R/RCRwR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_long_to_header�s
cCs?|j}d}t|�}|jd�||j�d�dS(NsIThis is an example of string which has almost the limit of header length.sAdd another line.s\This is an example of string which has almost the limit of header length.
Add another line.(R6RR�R�(R/RCRqR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_long_line_after_append�s
cCs?|j}d}t|�}|jd�||j�d�dS(NsThis is a shorter line.s!Add another sentence. (Surprise?)s9This is a shorter line. Add another sentence. (Surprise?)(R6RR�R�(R/RCRqR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_shorter_line_with_append�s
cCsA|j}d}d}t|dd|�}||j�d�dS(Ns!X-Very-Very-Very-Long-Header-Names�Die Mieter treten hier ein werden mit einem Foerderband komfortabel den Korridor entlang, an s�ndischen Wandgem�en vorbei, gegen die rotierenden Klingen bef�rt. s
iso-8859-1R�s=?iso-8859-1?q?Die_Mieter_treten_hier_?=
=?iso-8859-1?q?ein_werden_mit_einem_Foerderband_komfortabel_den_Korridor_?=
=?iso-8859-1?q?entlang=2C_an_s=FCdl=FCndischen_Wandgem=E4lden_vorbei=2C_g?=
=?iso-8859-1?q?egen_die_rotierenden_Klingen_bef=F6rdert=2E_?=(R6RR�(R/RCtfntgsR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_long_field_names cCsId}t�}t|dd�|d<||d<|j|j�d�dS(Ns�from FOO.TLD (vizworld.acl.foo.tld [123.452.678.9]) by hrothgar.la.mastaler.com (tmda-ofmipd) with ESMTP; Wed, 05 Mar 2003 18:10:18 -0700R�s s
Received-1s
Received-2s1Received-1: from FOO.TLD (vizworld.acl.foo.tld [123.452.678.9]) by
hrothgar.la.mastaler.com (tmda-ofmipd) with ESMTP;
Wed, 05 Mar 2003 18:10:18 -0700
Received-2: from FOO.TLD (vizworld.acl.foo.tld [123.452.678.9]) by
hrothgar.la.mastaler.com (tmda-ofmipd) with ESMTP;
Wed, 05 Mar 2003 18:10:18 -0700
(R RR6R(R/R�R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_long_received_header
s
cCsOd}t�}t|dddd�|d<||d<|j|j�d�dS(Ns�<15975.17901.207240.414604@sgigritzmann1.mathematik.tu-muenchen.de> (David Bremner's message of "Thu, 6 Mar 2003 13:58:21 +0100")R�s
Received-1R�s R�sReceived: <15975.17901.207240.414604@sgigritzmann1.mathematik.tu-muenchen.de>
(David Bremner's message of "Thu, 6 Mar 2003 13:58:21 +0100")
Received: <15975.17901.207240.414604@sgigritzmann1.mathematik.tu-muenchen.de>
(David Bremner's message of "Thu, 6 Mar 2003 13:58:21 +0100")
(R RR6R(R/R�R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_string_headerinst_eqs
cCsO|j}t�}d}||d<t|dd�|d<||j�d�dS(Ns� iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAGFBMVEUAAAAkHiJeRUIcGBi9
locQDQ4zJykFBAXJfWDjAAACYUlEQVR4nF2TQY/jIAyFc6lydlG5x8Nyp1Y69wj1PN2I5gzpsFace-1R�sFace-2s7Face-1: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAGFBMVEUAAAAkHiJeRUIcGBi9
locQDQ4zJykFBAXJfWDjAAACYUlEQVR4nF2TQY/jIAyFc6lydlG5x8Nyp1Y69wj1PN2I5gzp
Face-2: iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAGFBMVEUAAAAkHiJeRUIcGBi9
locQDQ4zJykFBAXJfWDjAAACYUlEQVR4nF2TQY/jIAyFc6lydlG5x8Nyp1Y69wj1PN2I5gzp
(R6R RR(R/RCR:tt((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt-test_long_unbreakable_lines_with_continuation*s
cCs5|j}d}tj|�}||j�d�dS(Ns�Received: from siimage.com ([172.25.1.3]) by zima.siliconimage.com with Microsoft SMTPSVC(5.0.2195.4905);
Wed, 16 Oct 2002 07:41:11 -0700s�Received: from siimage.com ([172.25.1.3]) by zima.siliconimage.com with
Microsoft SMTPSVC(5.0.2195.4905); Wed, 16 Oct 2002 07:41:11 -0700
(R6R7R�R(R/RCtmR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt"test_another_long_multiline_header:s
cCsR|j}d}t�}||d<t|dd�|d<|j|j�d�dS(Ns�List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/spamassassin-talk>,
<mailto:spamassassin-talk-request@lists.sourceforge.net?subject=unsubscribe>tListR�sQList: List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/spamassassin-talk>,
<mailto:spamassassin-talk-request@lists.sourceforge.net?subject=unsubscribe>
List: List-Unsubscribe: <https://lists.sourceforge.net/lists/listinfo/spamassassin-talk>,
<mailto:spamassassin-talk-request@lists.sourceforge.net?subject=unsubscribe>
(R6R RR(R/RCR�R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt%test_long_lines_with_different_headerFs
(R<R=R�R�R�R�R�R�R�R�R�R�R�R�RRRRRRR RR
(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�s* +
tTestFromManglingcBs#eZd�Zd�Zd�ZRS(cCs-t�|_d|jd<|jjd�dS(Nsaaa@bbb.orgRus(From the desk of A.A.A.:
Blah blah blah
(R R:RN(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pytsetUpZs
cCsEt�}t|dt�}|j|j�|j|j�d�dS(Ntmangle_from_s<From: aaa@bbb.org
>From the desk of A.A.A.:
Blah blah blah
(RRRgRoR:RAR.(R/RqRr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_mangled_frombs
cCsEt�}t|dt�}|j|j�|j|j�d�dS(NRs;From: aaa@bbb.org
From the desk of A.A.A.:
Blah blah blah
(RRR�RoR:RAR.(R/RqRr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_dont_mangle_fromms
(R<R=RRR(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRYs t
TestMIMEAudiocBs5eZd�Zd�Zd�Zd�Zd�ZRS(cCsstjjtjjt�dd�}ttd|�d�}z|j�|_Wd|j �Xt
|j�|_dS(NRRsaudiotest.autrb(RRR R!R"R#RRnt
_audiodataR9Rt_au(R/tdatadirR5((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR|s$cCs|j|jj�d�dS(Nsaudio/basic(RARRI(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_guess_minor_type�scCs/|jj�}|jtj|�|j�dS(N(RRTRAR�tdecodestringR(R/tpayload((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt
test_encoding�scCs,t|jd�}|j|j�d�dS(Ntfishs
audio/fish(RRRARI(R/tau((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_checkSetMinor�scCs|j}|j}|jjdddd�||jdd�||jjdd�dd
g�||jjddd�d�g}||jjddd�d�||jjd d
|dd�|k�||jjd|�|k�||jjd|dd�|k�dS(NsContent-DispositionR�R$saudiotest.auscontent-dispositions#attachment; filename="audiotest.au"RcRRktfailobjtfoobar(s
attachmentR(R$saudiotest.au(RAR|RR�R�RJ(R/RCtunlesstmissing((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_add_header�s"
(R<R=RRRRR#(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR{s
t
TestMIMEImagecBs5eZd�Zd�Zd�Zd�Zd�ZRS(cCsCtd�}z|j�|_Wd|j�Xt|j�|_dS(NsPyBanner048.gif(R&Rnt_imgdataR9R
t_im(R/R5((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�s
cCs|j|jj�d�dS(Ns image/gif(RAR&RI(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�scCs/|jj�}|jtj|�|j�dS(N(R&RTRAR�RR%(R/R((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�scCs,t|jd�}|j|j�d�dS(NRs
image/fish(R
R%RARI(R/tim((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�scCs|j}|j}|jjdddd�||jdd�||jjdd�dd
g�||jjddd�d�g}||jjddd�d�||jjd d
|dd�|k�||jjd|�|k�||jjd|dd�|k�dS(NsContent-DispositionR�R$sdingusfish.gifscontent-dispositions%attachment; filename="dingusfish.gif"RcRRkRR (s
attachmentR(R$sdingusfish.gif(RAR|R&R�R�RJ(R/RCR!R"((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR#�s"
(R<R=RRRRR#(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR$�s
tTestMIMEApplicationcBs,eZd�Zd�Zd�Zd�ZRS(cCs=|j}td�}||j�d�||dd�dS(Ns��application/octet-streamscontent-transfer-encodingR�(RAR
RI(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_headers�s cCsK|j}d}t|�}||j�d�||jdt�|�dS(Ns��+vv8/f7/Rf(RAR
RTRg(R/RCtbytesR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt test_body�s
cCs�d}t|dtj�}|j|j�|�|j|jdt�|�|j|dd�t�}t|�}|j|�|j �}t
j|�}|j|j�|�|j|jdt�|�|j|dd�dS(Ns��_encoderRfsContent-Transfer-EncodingR�(R
Rtencode_7or8bitRARTRgRRRoR.R7R�(R/t bytesdataR:RqRrtwireformtmsg2((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt$test_binary_body_with_encode_7or8bit�s
cCs�d}t|dtj�}|j|j�|�|j|jdt�|�t�}t|�}|j|�|j �}t
j|�}|j|j�|�|j|jdt�|�dS(Ns��Rf(R
Rtencode_noopRARTRgRRRoR.R7R�(R/R.R:RqRrR/R0((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt!test_binary_body_with_encode_noop�s
(R<R=R)R+R1R3(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR(�s tTestMIMETextcBs,eZd�Zd�Zd�Zd�ZRS(cCstd�|_dS(Nshello there(Rt_msg(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR scCs�|j}|j}||jj�d�||jjd�d�g}||jjd|�|k�||jjd|dd�|k�dS(Ns
text/plainREsus-asciiR Rc(RAR|R5RIRJ(R/RCR!R"((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt
test_typess cCs4|j|jj�d�|j|jj��dS(Nshello there(RAR5RTR|tis_multipart(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_payloadscCsF|j}tddd�}||j�jd�||dd�dS(Nshello thereR�sus-asciiscontent-typestext/plain; charset="us-ascii"(RARRFRK(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_charsets (R<R=RR6R8R9(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR4s
t
TestMultipartcBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�ZRS(cCsVtd�}z|j�}Wd|j�Xtdddd�}t|dd�}|jdd d
d�td�}|j|�|j|�d|d
<d|d<d|d<d}tj |�}|ddkr�tj
}n tj}|dkr�} nd} d| |df}
tjdtj |��|
|d<||_
||_||_dS(NsPyBanner048.gift multiparttmixedR�R[R�sdingusfish.gifscontent-dispositionR�R$s$Hi there,
This is the dingus fish.
sBarry <barry@digicool.com>Rus)Dingus Lovers <cravindogs@cravindogs.com>RzsHere is your dingus fishR�g�F�p�i�it-t+s %s%04di$s%a, %d %b %Y %H:%M:%StDate(R&RnR9RR
R�Rtattachttimet localtimettimezonetaltzonetstrftimeR5R&t_txt(R/R5Rt containertimagetintrotnowt timetuplettzsecstsignttzoffset((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR$s<
cCs�|j}|j}|j}|j}||j��||j�d�|t|j��d�|t|jd�|jd�}|jd�}|||j k�|||j
k�||j�||g�||j��||j��dS(Nsmultipart/mixediii(RAR|RaR5R7RItlenRTt
IndexErrorRFR&(R/RCR!traisesR
tm0tm1((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_hierarchyLs cCs2d}t�j|�}|j||j��dS(Ns�Content-Type: multipart/mixed; boundary="BOUNDARY"
MIME-Version: 1.0
Subject: A subject
To: aperson@dom.ain
From: bperson@dom.ain
--BOUNDARY
--BOUNDARY--
(RtparsestrR6R(R/RpR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_empty_multipart_idempotent_s
cCsTtdd�}d|d<d|d<d|d<|jd �|j|j�d
�dS(NR;R<s A subjectR�saperson@dom.ainRzsbperson@dom.ainRuR[s�Content-Type: multipart/mixed; boundary="BOUNDARY"
MIME-Version: 1.0
Subject: A subject
To: aperson@dom.ain
From: bperson@dom.ain
--BOUNDARY
--BOUNDARY--(RR^R6R(R/touter((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt/test_no_parts_in_a_multipart_with_none_epilogueps
cCsftdd�}d|d<d|d<d|d<d |_d |_|jd
�|j|j�d�dS(NR;R<s A subjectR�saperson@dom.ainRzsbperson@dom.ainRuRR[s�Content-Type: multipart/mixed; boundary="BOUNDARY"
MIME-Version: 1.0
Subject: A subject
To: aperson@dom.ain
From: bperson@dom.ain
--BOUNDARY
--BOUNDARY--
(RtpreambletepilogueR^R6R(R/RW((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt0test_no_parts_in_a_multipart_with_empty_epilogue�s
cCss|j}tdd�}d|d<d|d<d|d<|jd �td
�}|j|�||j�d�dS(NR;R<s A subjectR�saperson@dom.ainRzsbperson@dom.ainRuR[shello worldsContent-Type: multipart/mixed; boundary="BOUNDARY"
MIME-Version: 1.0
Subject: A subject
To: aperson@dom.ain
From: bperson@dom.ain
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
hello world
--BOUNDARY--(R6RR^RR@R(R/RCRWR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_one_part_in_a_multipart�s
cCs||j}tdd�}d|d<d|d<d|d<d |_td
�}|j|�|jd�||j�d�dS(
NR;R<s A subjectR�saperson@dom.ainRzsbperson@dom.ainRuRshello worldR[sContent-Type: multipart/mixed; boundary="BOUNDARY"
MIME-Version: 1.0
Subject: A subject
To: aperson@dom.ain
From: bperson@dom.ain
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
hello world
--BOUNDARY--(R6RRYRR@R^R(R/RCRWR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt1test_seq_parts_in_a_multipart_with_empty_preamble�s
cCs||j}tdd�}d|d<d|d<d|d<d|_td �}|j|�|jd
�||j�d�dS(NR;R<s A subjectR�saperson@dom.ainRzsbperson@dom.ainRushello worldR[sContent-Type: multipart/mixed; boundary="BOUNDARY"
MIME-Version: 1.0
Subject: A subject
To: aperson@dom.ain
From: bperson@dom.ain
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
hello world
--BOUNDARY--(R6RRGRYRR@R^R(R/RCRWR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt0test_seq_parts_in_a_multipart_with_none_preamble�s
cCs||j}tdd�}d|d<d|d<d|d<d|_td �}|j|�|jd
�||j�d�dS(NR;R<s A subjectR�saperson@dom.ainRzsbperson@dom.ainRushello worldR[sContent-Type: multipart/mixed; boundary="BOUNDARY"
MIME-Version: 1.0
Subject: A subject
To: aperson@dom.ain
From: bperson@dom.ain
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
hello world
--BOUNDARY--(R6RRGRZRR@R^R(R/RCRWR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt0test_seq_parts_in_a_multipart_with_none_epilogue�s
cCs||j}tdd�}d|d<d|d<d|d<d |_td
�}|j|�|jd�||j�d�dS(
NR;R<s A subjectR�saperson@dom.ainRzsbperson@dom.ainRuRshello worldR[sContent-Type: multipart/mixed; boundary="BOUNDARY"
MIME-Version: 1.0
Subject: A subject
To: aperson@dom.ain
From: bperson@dom.ain
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
hello world
--BOUNDARY--
(R6RRZRR@R^R(R/RCRWR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt1test_seq_parts_in_a_multipart_with_empty_epilogue�s
cCs||j}tdd�}d|d<d|d<d|d<d |_td
�}|j|�|jd�||j�d�dS(
NR;R<s A subjectR�saperson@dom.ainRzsbperson@dom.ainRus
shello worldR[sContent-Type: multipart/mixed; boundary="BOUNDARY"
MIME-Version: 1.0
Subject: A subject
To: aperson@dom.ain
From: bperson@dom.ain
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
hello world
--BOUNDARY--
(R6RRZRR@R^R(R/RCRWR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt.test_seq_parts_in_a_multipart_with_nl_epilogues
cCs�|j}|jd�}|t|j��d�|jd�}||j�d�|t|j��d�xb|j�D]T}||j�d�|t|j��d�|jd�}||j�d�qyWdS(Ns
msg_36.txtiismultipart/alternativesmessage/external-bodyis
text/plain(RAR;RORTRI(R/RCR:tmsg1RXt
subsubpart((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_message_external_body3s cCs/|jd�}|jt|j��d�dS(Ns
msg_37.txti(R;RARORT(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_double_boundary@scCsH|j}|jd�}t�}tj||�||j�d�dS(Ns
msg_38.txts�multipart/mixed
multipart/mixed
multipart/alternative
text/plain
text/plain
text/plain
text/plain
(R6R;RRt
_structureR.(R/RCR:R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt)test_nested_inner_contains_outer_boundaryGs cCsH|j}|jd�}t�}tj||�||j�d�dS(Ns
msg_39.txts�multipart/mixed
multipart/mixed
multipart/alternative
application/octet-stream
application/octet-stream
text/plain
(R6R;RRRfR.(R/RCR:R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_nested_with_same_boundaryZs cCs)|jd�}|j|j�d�dS(Ns
msg_40.txts�MIME-Version: 1.0
Content-Type: text/html; boundary="--961284236552522269"
----961284236552522269
Content-Type: text/html;
Content-Transfer-Encoding: 7Bit
<html></html>
----961284236552522269--
(R;RAR(R/R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_boundary_in_non_multipartkscCs[|j}tjd�}|j|j��||j�d�|t|j��d�dS(Ns�MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=" XXXX"
-- XXXX
Content-Type: text/plain
-- XXXX
Content-Type: text/plain
-- XXXX--
s XXXXi(RAR7R�R|R7R\RORT(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt test_boundary_with_leading_spacezs cCs5t�jd�}|j|jd�j�d�dS(Ns�Content-Type: multipart/mixed; boundary="===============0012394164=="
MIME-Version: 1.0
--===============0012394164==
Content-Type: image/file1.jpg
MIME-Version: 1.0
Content-Transfer-Encoding: base64
YXNkZg==
--===============0012394164==--isYXNkZg==(RRURART(R/R
((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt&test_boundary_without_trailing_newline�s
(R<R=RRTRVRXR[R\R]R^R_R`RaRdReRgRhRiRjRk(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR:#s$ (
tTestNonConformantcBsYeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
RS( cCsU|j}|jd�}||j�d�||j�d�||j�d�dS(Ns
msg_14.txts
text/plainRpR�(RAR;RIR�R�(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_parse_missing_minor_type�s
cCst|j}|jd�}|jd�}|t|d��|jt|j�d�|t|jdtj ��dS(Ns
msg_15.txtitdefectsi(
R|R;RTthasattrRARORnt
isinstanceRtStartBoundaryNotFoundDefect(R/R!R:tinner((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_same_boundary_inner_outer�s cCs�|j}|jd�}|t|j�t��|jt|j�d�|t|jdtj ��|t|jdtj
��dS(Ns
msg_25.txtiii(R|R;RpRTR(RARORnRtNoBoundaryInMultipartDefectt!MultipartInvariantViolationDefect(R/R!R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_multipart_no_boundary�s cCs�|j}|j}t�}d|d<||j�d�||j�d�||j�d�|d=d|d<||j�d�||j�d�||j�d�t�}t|�}|j|�||j �d�dS(NRpsContent-TypeR�s
text/plainscontent-typeRksContent-Type: foo
(
RAR6R R�R�RIRRRoR.(R/RCtneqR:RqRr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_invalid_content_type�s
cCs/|j}|jd�}||j�d�dS(Ns
msg_31.txtsm--BOUNDARY
Content-Type: text/plain
message 1
--BOUNDARY
Content-Type: text/plain
message 2
--BOUNDARY--
(R6R;RT(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_no_start_boundary�s cCs/|j}|jd�}||j�d�dS(Ns
msg_35.txts�From: aperson@dom.ain
To: bperson@dom.ain
Subject: here's something interesting
counter to RFC 2822, there's no separating newline here
(R6R;R(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_no_separating_blank_line�s cCs�|j}|jd�}|t|d��|jt|j�d�|t|jdtj��|t|jdtj ��dS(Ns
msg_41.txtRniii(
R|R;RoRARORnRpRRtRu(R/R!R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_lying_multipart�s cCsd|jd�}|jd�jd�}|jt|j�d�|jt|jdtj��dS(Ns
msg_42.txtii( R;RTRARORnR|RpRRq(R/RWtbad((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_missing_start_boundary�s
cCs�|j}d}tj|�}||j�g�||j�d�|t|j�d�|jt|jdt j
��||jdjd�dS(Ns Line 1
Line 2
Line 3s
Line 2
Line 3iis Line 1
(RAR7R�R�RTRORnR|RpRt#FirstHeaderLineIsContinuationDefecttline(R/RCR
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt&test_first_line_is_continuation_headers
(R<R=RmRsRvRxRyRzR{R}R�(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRl�s
tTestRFC2047cBs5eZd�Zd�Zd�Zd�Zd�ZRS(cCsQ|j}d}t|�}||ddd d
g�|tt|��d�dS(NsVRe: =?mac-iceland?q?r=8Aksm=9Arg=8Cs?= baz
foo bar =?mac-iceland?q?r=8Aksm=9Arg=8Cs?=sRe:s
r�sm�g�smac-icelandsbaz foo barsVRe: =?mac-iceland?q?r=8Aksm=9Arg=8Cs?= baz foo bar
=?mac-iceland?q?r=8Aksm=9Arg=8Cs?=(sRe:N(s
r�sm�g�smac-iceland(sbaz foo barN(s
r�sm�g�smac-iceland(RARRGR(R(R/RCRqtdh((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2047_multilines
cCsZ|j}d}t|�}||ddg�tt|��jd�}||d�dS( Ns0=?ISO-8859-1?Q?Andr=E9?= Pirard <pirard@dom.ain>sAndr�iso-8859-1sPirard <pirard@dom.ain>slatin-1sAndr�irard <pirard@dom.ain>(sAndr�iso-8859-1(sPirard <pirard@dom.ain>N(RARRGtunicodeRR�(R/RCRqR�thu((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_whitespace_eater_unicodes cCsW|j}d}t|�}||dd d
dg�t|�j�}||d�dS(NsWThe =?iso-8859-1?b?cXVpY2sgYnJvd24gZm94?= jumped over the =?iso-8859-1?b?bGF6eSBkb2c=?=tThesquick brown foxs
iso-8859-1sjumped over theslazy dogu,The quick brown fox jumped over the lazy dog(R�N(squick brown foxs
iso-8859-1(sjumped over theN(slazy dogs
iso-8859-1(RARRGRt__unicode__(R/RCRqR�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_whitespace_eater_unicode_2's
cCs/d}t|�}|j||dfg�dS(Ns3Sm=?ISO-8859-1?B?9g==?=rg=?ISO-8859-1?B?5Q==?=sbord(RRARG(R/RqR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2047_missing_whitespace0scCs5d}t|�}|j|dd d
ddg�dS(
Ns7Sm =?ISO-8859-1?B?9g==?= rg =?ISO-8859-1?B?5Q==?= sbordtSms�iso-8859-1trgs�sbord(R�N(s�iso-8859-1(R�N(s�iso-8859-1(R�N(RRARG(R/RqR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2047_with_whitespace5s
(R<R=R�R�R�R�R�(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�s
tTestMIMEMessagecBs}eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�ZRS(
cCs1td�}z|j�|_Wd|j�XdS(Ns
msg_11.txt(R&Rnt_textR9(R/R5((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR@scCs|jttd�dS(Nsa plain string(Rat TypeErrorR(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_type_errorGscCs�|j}|j}d}t�}||d<t|�}||j�d�|j�}|t|t��|t|�d�|d}|||k�||d|�dS(Ns
A sub-messageR�smessage/rfc822iitsubject( RAR|R RRIRTRptlistRO(R/RCR!R�R
RRRX((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_valid_argumentJs
cCsX|j}t�}d|d<t�}d|d<t|�}|jtj|j|�dS(Ns subpart 1R�s subpart 2(RAR RRaRtMultipartConversionErrorR@(R/RCRbR0R((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_bad_multipartYs
cCsrt�}d|d<|jd�t|�}d|d<t�}t|�}|j|�|j|j�d�dS(NsAn enclosed messageR�s!Here is the body of the message.
sThe enclosing messages�Content-Type: message/rfc822
MIME-Version: 1.0
Subject: The enclosing message
Subject: An enclosed message
Here is the body of the message.
(R RNRRRRoRAR.(R/R
RRqRr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt
test_generatebs
cCs�|j}|j}|jd�}||j�d�|j�}|t|t��|t|�d�|d}|jt|t��||dd�||j�d�dS(Ns
msg_11.txtsmessage/rfc822iiR�sAn enclosed messages!Here is the body of the message.
( RAR|R;RIRTRpR�ROR (R/RCR!R:Rtsubmsg((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_parse_message_rfc822vs
c Cs?|j}|j}|jd�}||j�d�||j��|t|j��d�|jd�}||j�d�||j�d�|jd�}||j�d�|t|j��d �|jd�}|t|t��||d
d�||j dd
d�d�||j dd
d�d�|jd�}|t|t��||dd�||jd
d�ddg�||j dd
d�d�|jd �}||j�d�|j�}|t|t��|t|�d�|d}|t|t��||j�d�||dd�dS(Ns
msg_16.txtsmultipart/reportiis
text/plains�This report relates to a message you sent with the following header fields:
Message-id: <002001c144a6$8752e060$56104586@oxy.edu>
Date: Sun, 23 Sep 2001 20:10:55 -0700
From: "Ian T. Henry" <henryi@oxy.edu>
To: SoCal Raves <scr@socal-raves.org>
Subject: [scr] yeah for Ians!!
Your message cannot be delivered to the following recipients:
Recipient address: jangel1@cougar.noc.ucla.edu
Reason: recipient reached disk quota
ismessage/delivery-statusisoriginal-envelope-ids"0GK500B4HD0888@cougar.noc.ucla.edutdnsRcs
reporting-mtaRtnsdtactiontfailedsoriginal-recipientR�sjangel1@cougar.noc.ucla.edusfinal-recipientsmessage/rfc822s
message-ids(<002001c144a6$8752e060$56104586@oxy.edu>(srfc822R(sjangel1@cougar.noc.ucla.eduR(
RAR|R;RIR7RORTRpR RJRGR�R�( R/RCR!R:RXtdsn1tdsn2RRc((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_dsn�sD
c Cs�|j}td�}z|j�}Wd|j�Xt�}d|d<d|d<d|d<d|_d |_td
�}td�}|jdd
dd�|j |�|j |�t
�}t|�}|j|�||j
�|�dS(Ns
msg_21.txtsaperson@dom.ainRusbperson@dom.ainRzR�R�sMIME messagesEnd of MIME message
R�R�sContent-Typesmultipart/mixedR�R[(R6R&RnR9R RYRZRR�R@RRRoR.( R/RCR5RpR:RbR0R�Rr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt
test_epilogue�s(
cCs�|j}t�}d|d<d|d<d|d<d|_d|_td �}td
�}|jddd
d�|j|�|j|�||j�d�dS(Nsaperson@dom.ainRusbperson@dom.ainRzR�R�sMIME messageRR�R�sContent-Typesmultipart/mixedR�R[sdFrom: aperson@dom.ain
To: bperson@dom.ain
Subject: Test
Content-Type: multipart/mixed; boundary="BOUNDARY"
MIME message
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
One
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Two
--BOUNDARY--
(R6R RYRZRR�R@R(R/RCR:RbR0((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_no_nl_preamble�s
cCs|j}td�}ztj|�}Wd|j�X|jd�}||j�d�||j�d�|jd�}||j�d�||j�d�|jd�}||j�d�||j�d�|jd�}||j�d�||j�d�dS(Ns
msg_30.txtismessage/rfc822is
text/plain(RAR&R7R8R9RTtget_default_typeRI(R/RCR5R:t
container1t
container2tcontainer1atcontainer2a((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_default_type�s" cCs|j}td�}ztj|�}Wd|j�X|jd�}||j�d�||j�d�|jd�}||j�d�||j�d�|jd�}||j�d�||j�d�|jd�}||j�d�||j�d�dS(Ns
msg_28.txtismessage/rfc822is
text/plain(RAR&R7R8R9RTR�RI(R/RCR5R:R�R�R�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt.test_default_type_with_explicit_container_types" cCsX|j}|j}tdd�}d|_td�}td�}t|�}t|�}|j|�|j|�||j�d�||j�d�||j�d�||j�d�||j d�d�|d =|d
=|d =|d
=||j�d�||j�d�||j�d�||j�d�||j d�d�dS(NtdigestR[Rs
message 1
s
message 2
smessage/rfc822is�Content-Type: multipart/digest; boundary="BOUNDARY"
MIME-Version: 1.0
--BOUNDARY
Content-Type: message/rfc822
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
message 1
--BOUNDARY
Content-Type: message/rfc822
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
message 2
--BOUNDARY--
scontent-typesmime-versionsBContent-Type: multipart/digest; boundary="BOUNDARY"
MIME-Version: 1.0
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
message 1
--BOUNDARY
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
message 2
--BOUNDARY--
(
RAR6RRZRRR@RIR�R(R/RCRwRGt subpart1at subpart2atsubpart1tsubpart2((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_default_type_non_parseds4
cCs|j}td�}td�}td||f�}|t|j��d�||jd�|�||jd�|�dS(NRt _subpartsiii(RARRRORT(R/RCttext1ttext2R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt$test_mime_attachments_in_constructoris (R<R=RR�R�R�R�R�R�R�R�R�R�R�R�(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�?s
: # JtTestIdempotentcBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(cCsCt|�}z|j�}Wd|j�Xtj|�}||fS(N(R&RnR9R7R�(R/R$R5RR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR;zscCsH|j}t�}t|dd�}|j|�|||j��dS(Ntmaxheaderleni(R6RRRoR.(R/R:RpRCRqRr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt_idempotent�s
cCs�|j}|jd�\}}||j�d�||j�d�||j�d�||j�dd�||jd�d�||jd�||j d�|j
||�dS( Ns
msg_01.txts
text/plainRpR�iREsus-ascii(scharsetsus-ascii(RAR;RIR�R�R�RJRYRGRZR�(R/RCR:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_parse_text_message�s cCsn|j}|jd�\}}||j�d�||j�d�||jd�d�|j||�dS(Ns
msg_03.txts
text/plainRE(RAR;RIR�RGRJR�(R/RCR:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_parse_untyped_message�s cCs)|jd�\}}|j||�dS(Ns
msg_04.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_simple_multipart�scCs)|jd�\}}|j||�dS(Ns
msg_02.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_MIME_digest�scCs)|jd�\}}|j||�dS(Ns
msg_27.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_long_header�scCs)|jd�\}}|j||�dS(Ns
msg_28.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt"test_MIME_digest_with_part_headers�scCs)|jd�\}}|j||�dS(Ns
msg_06.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_mixed_with_image�scCs)|jd�\}}|j||�dS(Ns
msg_05.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_multipart_report�scCs)|jd�\}}|j||�dS(Ns
msg_16.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR��scCs)|jd�\}}|j||�dS(Ns
msg_21.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_preamble_epilogue�scCs)|jd�\}}|j||�dS(Ns
msg_23.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_multipart_one_part�scCs)|jd�\}}|j||�dS(Ns
msg_24.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_multipart_no_parts�scCs)|jd�\}}|j||�dS(Ns
msg_31.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRy�scCs)|jd�\}}|j||�dS(Ns
msg_32.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2231_charset�scCs)|jd�\}}|j||�dS(Ns
msg_33.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_more_rfc2231_parameters�scCs)|jd�\}}|j||�dS(Ns
msg_34.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt%test_text_plain_in_a_multipart_digest�scCs)|jd�\}}|j||�dS(Nsmsg_12a.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_nested_multipart_mixeds�scCs)|jd�\}}|j||�dS(Ns
msg_36.txt(R;R�(R/R:Rp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt%test_message_external_body_idempotent�sc
Cs�|j}|j}|jd�\}}||j�d�i}x$|j�D]\}}|||<qMW||dd�||dd�||jd�||jd�|t|j��d �|jd
�}||j�d�||j�d�|jd
�} || j�d�|| j�d�|jd�}
||
j�d�|jt |
t
��|
j�}|t |t��|t|�d
�|d
}|t |t
��||j�d�dS(Ns
msg_05.txtsmultipart/reportsreport-typesdelivery-statusR�s%D1690A7AC1.996856090/mail.example.coms%This is a MIME-encapsulated message.
s
iis
text/plainsYadda yadda yadda
iismessage/rfc822(RAR|R;RIR�RYRZRORTRpR R�(
R/RCR!R:RptparamstpktpvRbR0tmsg3Rtmsg4((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_content_type�s6
cCs�|j}|j}|jd�\}}||j�d�|j�}|t|t��|t|�d�|d}|jt|t��||j�d�|jt|j�t ��||j�d�dS(Ns
msg_06.txtsmessage/rfc822iis
text/plains
(
RAR|R;RIRTRpR�ROR R((R/RCR!R:RpRRb((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_parser�s
(R<R=R;R�R�R�R�R�R�R�R�R�R�R�R�R�RyR�R�R�R�R�R�R�(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�ys, tTestMiscellaneouscBseZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(cCs{td�}z|j�}Wd|j�Xtj|�}t�}t|dd�}|j|�|j||j ��dS(Ns
msg_01.txtR�i(
R&RnR9R7R�RRRoRAR.(R/R5RpR:RqRr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_message_from_strings
cCs�td�}zj|j�}|jd�tj|�}t�}t|dd�}|j|�|j||j ��Wd|j
�XdS(Ns
msg_01.txtiR�(R&RntseekR7R8RRRoRAR.R9(R/R5RpR:RqRr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_message_from_file!s
cCs�|j}td�}z|j�}Wd|j�Xdtfd��Y}tj||�}|t||��td�}z|j�}Wd|j�Xtj||�}x'|j�D]}|t||��q�WdS(Ns
msg_01.txtt MyMessagecBseZRS((R<R=(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�8ss
msg_02.txt( R|R&RnR9R R7R�Rptwalk(R/R!R5RpR�R:RX((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt#test_message_from_string_with_class0s cCs�|j}dtfd��Y}td�}ztj||�}Wd|j�X|t||��td�}ztj||�}Wd|j�Xx'|j�D]}|t||��q�WdS(NR�cBseZRS((R<R=(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�Jss
msg_01.txts
msg_02.txt(R|R R&R7R8R9RpR�(R/R!R�R5R:RX((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt!test_message_from_file_with_classGs c"Cs�td�}|j}|j�|j|dddddddd d
ddd
ddddddddddddddddddd d!g �dS("NR7RtEncoderstErrorsRRt IteratorsRRR
RRtMIMENonMultipartRR RtUtilst
base64MIMERRERRt generatorRcRR�R8R�tmimetparsert
quopriMIMERR(t
__import__t__all__tsortRA(R/tmoduletall((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest__all__\s
cCsCtj�}|jtjtj|��d tj|�d �dS(Ni(RARARt parsedatet
formatdatetgmtime(R/RJ((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_formatdateoscCsItj�}|jtjtj|dt��d tj|�d �dS(NRBi(RARARR�R�RgRB(R/RJ((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_formatdate_localtimetscCs~tj�}|jtj|dt�tjdtj|���|jtj|dtdt�tjdtj|���dS(NRBs%a, %d %b %Y %H:%M:%S -0000tusegmts%a, %d %b %Y %H:%M:%S GMT(RARARR�R�RER�Rg(R/RJ((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_formatdate_usegmtzscCs|jtjd�d�dS(NR(RARR�RG(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_parsedate_none�scCs&|jtjd�tjd��dS(NsWed,3 Apr 2002 14:58:26 +0800sWed, 3 Apr 2002 14:58:26 +0800(RARR�(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_parsedate_compact�scCs#|j}|tjd�d�dS(
Ns25 Feb 2003 13:47:26 -0800i�iii
i/iiii�i��i�iii
i/iiii�i��RARtparsedate_tz(R/RC((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_parsedate_no_dayofweek�s cCs#|j}|tjd�d�dS(
Ns5 Feb 2003 13:47:26 -0800i�iii
i/iiii�i��i�iii
i/iiii�i��RARR�(R/RC((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt#test_parsedate_compact_no_dayofweek�s cCs�|j}tjd�}ttj|��}|tj|�d |d �|ttjd|��d�tjd�}ttj|d ��}|tj|�d |d �|ttjd|d ��d�dS(Ns5 Feb 2003 13:47:26 -0800is%Yi�i ( RARR�tintRAtmktimeRBRER�(R/RCttimetupR((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt+test_parsedate_acceptable_to_time_functions�s cCs?|jtjd�d�|jtjtjd��d�dS(Ns<>R(RR(RARt parseaddrt
formataddr(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_parseaddr_empty�scCs|jtjd�d�dS(NsA Silly Personsperson@dom.ainsA Silly Person <person@dom.ain>(sA Silly Personsperson@dom.ain(RARR�(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_noquote_dump�scCsW|jtjd�d�d}d}|jtjtj||f��||f�dS(NsA (Very) Silly Personsperson@dom.ains*"A \(Very\) Silly Person" <person@dom.ain>sA \(Special\) Person(sA (Very) Silly Personsperson@dom.ain(RARR�R�(R/tatb((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_escape_dump�scCsW|jtjd�d�d}d}|jtjtj||f��||f�dS(NsArthur \Backslash\ Foobarsperson@dom.ains."Arthur \\Backslash\\ Foobar" <person@dom.ain>(sArthur \Backslash\ Foobarsperson@dom.ain(RARR�R�(R/R�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_escape_backslashes�scCsyd}d}d\}}|jtj|�||f�|jtj|�||f�|jtj||f�|�dS(NsJohn X. Doe <jxd@example.com>s"John X. Doe" <jxd@example.com>sJohn X. Doesjxd@example.com(sJohn X. Doesjxd@example.com(RARR�R�(R/R�tyR�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_name_with_dot�scCs#d}|jtj|�d�dS(NsFoo
Bar <foo@example.com>sFoo Barsfoo@example.com(sFoo Barsfoo@example.com(RARR�(R/R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_multiline_from_comment�scCs|jtjd�d�dS(NsA Silly; Personsperson@dom.ains""A Silly; Person" <person@dom.ain>(sA Silly; Personsperson@dom.ain(RARR�(R/((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_quote_dump�scCs{|j}|tjd�d�|tjd�d�|tjd�d�|tjd�d�|tjd�d�dS(Nthelloshello
shello
shello
shello
s hello
(RARtfix_eols(R/RC((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt
test_fix_eols�s cCs�|j}|j}t�}t�}||d�||d�||d�|d|�|d|�|d|�||d�||d�||d�|d|�|d|�|d|�|||�|||�dS(Nsus-asciisUS-ASCIIsUs-AsCiItusasciitUSASCIItUsAsCiI(RAtassertNotEqualR(R/RCtnetcset1tcset2((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_charset_richcomparisons�s$
cCs/|j}|tjddg�ddg�dS( Nsaperson@dom.ain (Al Person)sBud Person <bperson@dom.ain>s Al Personsaperson@dom.ains
Bud Personsbperson@dom.ain(s Al Personsaperson@dom.ain(s
Bud Personsbperson@dom.ain(RARtgetaddresses(R/RC((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_getaddresses�s
cCsm|j}|tjdg�dg�|tjdg�d d
dg�|tjddg�dd
g�dS(Nsfoo: ;Rs []*-- =~$s*--s#"Jason R. Mastaler" <jason@dom.ain>sJason R. Mastalers
jason@dom.ain(RR(RR(RR(Rs*--(RR(sJason R. Mastalers
jason@dom.ain(RARR(R/RC((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_getaddresses_nasty�s cCs4|j}tjdg�}||ddd�dS(s(Test proper handling of a nested comments%User ((nested comment)) <foo@bar.com>iisfoo@bar.comN(RARR(R/RCtaddrs((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt"test_getaddresses_embedded_comment�s cCs?|j}t�}|jdddd�||j�d�dS(Nscontent-dispositionR�R$sfoo\wacky"name(RAR R�RU(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_utils_quote_unquote s
cCs&td�}|j|j�d�dS(Ns
not a charsetR�(RRAtget_body_encoding(R/RE((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt)test_get_body_encoding_with_bogus_charset scCst|j}t�}d|d<||dd�|j�}|t|�d�||dd�t|d�}||j�d�|jdd |�||j�d
�||jdt�d�||dd�t�}d
|d<|j�}|t|�d�||dd�t|d�}||j�t j
�|jdd |�||j�d�||dd�dS(Nstext/plain; charset=UTF-8sContent-Typescontent-typeiisutf-8R�shello worldREsaGVsbG8gd29ybGQ=
Rfscontent-transfer-encodingstext/plain; charset="US-ASCII"sus-asciiR�(RAR RQRORRRNRTRgRR-(R/RCR:RRRE((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt-test_get_body_encoding_with_uppercase_charset s.
cCs8td�}td�}|j|j�|j��dS(Nsus-asciisUS-ASCII(RRAR(R/tlctuc((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_charsets_case_insensitive% scCsH|j}|jd�}t�}tj||�||j�d�dS(Ns
msg_43.txtsBmultipart/report
text/plain
message/delivery-status
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/plain
text/rfc822-headers
(R6R;RRRfR.(R/RCR:R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt1test_partial_falls_inside_message_delivery_status* s ( R<R=R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�RRRRR
RRRRRRRR(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR�s<
t
TestIteratorscBs#eZd�Zd�Zd�ZRS(cCs�|j}|j}|jd�}tj|�}t|�}|t|�d�|tj|�|j ��|jd�}tj|�}t|�}|t|�d�t
d�}z |tj|�|j��Wd|j�XdS(Ns
msg_01.txtis
msg_02.txti+s
msg_19.txt(
RAR6R;Rtbody_line_iteratorR�ROtEMPTYSTRINGR RTR&RnR9(R/RCRwR:titR�R5((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_body_line_iteratorX s cCs�|j}|jd�}tj|d�}g}d}x+|D]#}|d7}|j|j��q=W||d�|tj|�d�dS(Ns
msg_04.txtRpiiis`a simple kind of mirror
to reflect upon our own
a simple kind of mirror
to reflect upon our own
(RAR;Rttyped_subpart_iteratorR�RTRR (R/RCR:RR�tsubpartsRX((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_typed_subpart_iteratorl s
cCs�|j}|jd�}tj|dd�}g}d}x+|D]#}|d7}|j|j��q@W||d�|tj|�d�dS(Ns
msg_03.txtRpR�iis%
Hi,
Do you like this message?
-Me
(RAR;RR R�RTRR (R/RCR:RR�R!RX((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt(test_typed_subpart_iterator_default_type} s
(R<R=RR"R#(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRW s tTestParserscBsbeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �ZRS(
cCs�|j}td�}zt�j|�}Wd|j�X||dd�||dd�||j�d�|j|j��|jt |j
�t��dS(Ns
msg_02.txtRxsppp-request@zzz.orgRwsppp@zzz.orgsmultipart/mixed(RAR&RtparseR9RIR�R7R|RpRTR((R/RCR5R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_header_parser�s cCsQ|j}tjd�}||dd�||dd�||j�d�dS(Ns�From: aperson@dom.ain
To: bperson@dom.ain
Subject: the next line has a space on it
Date: Mon, 8 Apr 2002 15:09:19 -0400
Message-ID: spam
Here's the message body
R�s!the next line has a space on it
s
message-idtspamsHere's the message body
(RAR7R�RT(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_whitespace_continuation�s cCsQ|j}tjd�}||dd�||dd�||j�d�dS(Ns�From: aperson@dom.ain
To: bperson@dom.ain
Date: Mon, 8 Apr 2002 15:09:19 -0400
Message-ID: spam
Subject: the next line has a space on it
Here's the message body
R�s!the next line has a space on it
s
message-idR'sHere's the message body
(RAR7R�RT(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt(test_whitespace_continuation_last_header�s cCs�|j}tddd�}zt�j|�}Wd|j�X|t|j��d�|jd�}||j�d�||j�d�|jd�}||j�d �dS(
Ns
msg_26.txtR%Riis
text/plains!Simple email with attachment.
isapplication/riscos(RAR&RR%R9RORTRI(R/RCR5R:tpart1tpart2((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_crlf_separation�s c Cs�|j}|j}td�}ztj|�}Wd|j�X||j�d�|t|j��d�|jd�}||j �d�||j�d�|t|j��d�|jd�}||j�d�||j �d�||j�d�|jd�}||j �d�||j�d�|t|j��d�|jd�}||j�d�||j �d�||j�d�dS( Ns
msg_28.txtiiismessage/rfc822s
text/plains
message 1
s
message 2
(
RAR6R&R7R8R9R7RORTRI( R/RCRwR5R:R*tpart1aR+tpart2a((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt-test_multipart_digest_with_extra_mime_headers�s0 cCs?dddg}tjtj|��}|j|dd�dS(Ns$From: Andrew Person <aperson@dom.ains
Subject: Tests%Date: Tue, 20 Aug 2002 16:43:45 +1000tdatesTue, 20 Aug 2002 16:43:45 +1000(R7R�R,R RA(R/R�R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_three_lines�s
cCsd|j}d}d}d||f}tj|�}||jd�|�||jd�|�dS(NRps more texts'Header: %s
Next-Header: %s
Body
RsNext-Header(RAR7R�tget(R/RCtvalue1tvalue2R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt3test_strip_line_feed_and_carriage_return_in_headers�s
cCsz|j}d}tj|�}|t|j��d�|j�}|j�||dddg�||j�d�dS(Ns(>From: foo
From: bar
!"#QUX;~: zoo
bodyis!"#QUX;~s>FromRutbody(RAR7R�ROR�R�RT(R/RCR
R:R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2822_header_syntax
s
cCs;|j}d}tj|�}|t|j��d�dS(Ns<>From foo@example.com 11:25:53
From: bar
!"#QUX;~: zoo
bodyi(RAR7R�ROR�(R/RCR
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt(test_rfc2822_space_not_allowed_in_header
s cCsa|j}d}tj|�}|j�}|j�||dddg�||j�d�dS(Ns7A: first header
B: second header
CC: third header
bodytAtBtCCR6(RAR7R�R�R�RT(R/RCR
R:theaders((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt!test_rfc2822_one_character_header
s
(R<R=R&R(R)R,R/R1R5R7R8R=(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR$�s "
t
TestBase64cBs,eZd�Zd�Zd�Zd�ZRS(cCs�|j}|tjd�ttjddd���x�td�D]�}|dkr\d}nZ|dkrqd}nE|dkr�d }n0|d
kr�d}n|dkr�d}nd
}|tjd|�|�qAWdS(NRteolRiiiiiii iiiR�(RARt
base64_lenROR�R�(R/RCtsizetbsize((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_len$
s cCsk|j}|tjd�d�|tjd�d�|tjdd�d�|tjdd�d�dS(NRsaGVsbG8=RtXsaGVsbG8NCndvcmxk
thelloXworld(RARRf(R/RC((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_decode1
s
cCs�|j}|tjd�d�|tjd�d�|tjd�d�|tjdd�d�|tjdd d
d�d�|tjdd d
dd
d�d�dS(NRRs aGVsbG8=
shello
s aGVsbG8K
is
aGVsbG8NCg==
sxxxx iR�i(s�eHh4eCB4eHh4IHh4eHggeHh4eCB4eHh4IHh4eHgg
eHh4eCB4eHh4IHh4eHggeHh4eCB4eHh4IHh4eHgg
eHh4eCB4eHh4IHh4eHggeHh4eCB4eHh4IHh4eHgg
eHh4eCB4eHh4IA==
R?s
s�eHh4eCB4eHh4IHh4eHggeHh4eCB4eHh4IHh4eHgg
eHh4eCB4eHh4IHh4eHggeHh4eCB4eHh4IHh4eHgg
eHh4eCB4eHh4IHh4eHggeHh4eCB4eHh4IHh4eHgg
eHh4eCB4eHh4IA==
(RARR�(R/RC((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_encode8
s cCs�|j}tj}||d�d�||d�d�||ddd�d�||ddt�d �||d
ddd
�d�||d
ddd
dd�d�dS(NRs=?iso-8859-1?b?aGVsbG8=?=shello
worlds!=?iso-8859-1?b?aGVsbG8NCndvcmxk?=REs
iso-8859-2s=?iso-8859-2?b?aGVsbG8=?=t keep_eolss!=?iso-8859-1?b?aGVsbG8Kd29ybGQ=?=sxxxx iR�i(s�=?iso-8859-1?b?eHh4eCB4eHh4IHh4eHggeHg=?=
=?iso-8859-1?b?eHggeHh4eCB4eHh4IHh4eHg=?=
=?iso-8859-1?b?IHh4eHggeHh4eCB4eHh4IHg=?=
=?iso-8859-1?b?eHh4IHh4eHggeHh4eCB4eHg=?=
=?iso-8859-1?b?eCB4eHh4IHh4eHggeHh4eCA=?=
=?iso-8859-1?b?eHh4eCB4eHh4IHh4eHgg?=R?s
s=?iso-8859-1?b?eHh4eCB4eHh4IHh4eHggeHg=?=
=?iso-8859-1?b?eHggeHh4eCB4eHh4IHh4eHg=?=
=?iso-8859-1?b?IHh4eHggeHh4eCB4eHh4IHg=?=
=?iso-8859-1?b?eHh4IHh4eHggeHh4eCB4eHg=?=
=?iso-8859-1?b?eCB4eHh4IHh4eHggeHh4eCA=?=
=?iso-8859-1?b?eHh4eCB4eHh4IHh4eHgg?=(RARt
header_encodeRg(R/RCthe((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_header_encodeN
s (R<R=RCRFRGRK(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR>#
s
t
TestQuopricBsYeZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
RS( cCs�gttd�td�d�D]}t|�^q gttd�td�d�D]}t|�^qUgttd�td�d�D]}t|�^q�dd d
ddd
g|_gtd�D]'}t|�|jkr�t|�^q�|_t|j�t|j�dks"t�gttd
�td�d�D]}t|�^qBdg|_|jjd�gtd�D]'}t|�|jkr�t|�^q�|_ t|j�t|j �dks�t�dS(NR�tziR9tZt0t9t!t*R>R=t/Rit~s t=(
R�tordtchrthlitthnonROtAssertionErrortblittremovetbnon(R/R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRl
s�=(B=cCsXx'|jD]}|jtj|��q
Wx'|jD]}|jtj|��q4WdS(N(RXR�Rtheader_quopri_checkRYR|(R/tc((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_header_quopri_checkx
scCsXx'|jD]}|jtj|��q
Wx'|jD]}|jtj|��q4WdS(N(R[R�Rtbody_quopri_checkR]R|(R/R_((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_body_quopri_check~
sc
Cs�|j}tj}tj}x=d D]5}|||�t||dddd��d�q"Wx$|jD]}|||�d�qeWx$|jD]}|||�d�q�WdS(
NRs
h@e@l@l@o@RERR?iii(shellos
h@e@l@l@o@(RARtheader_quopri_lenRIRORXRY(R/RCthqltencRqR_((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_header_quopri_len�s
3cCsd|j}tj}x$|jD]}|||�d�qWx$|jD]}|||�d�qCWdS(Nii(RARtbody_quopri_lenR[R](R/RCtbqlR_((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_body_quopri_len�s cCsIxBtd�D]4}t|�}|jtjtj|��|�q
WdS(Ni(R�RWRARR�tquote(R/R�R_((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_quote_unquote_idempotent�scCs�|j}tj}||d�d�||d�d�||ddd�d�||ddt�d �||d
�d�||dd
dd�d�||dd
dddd�d�dS(NRs=?iso-8859-1?q?hello?=shello
worlds!=?iso-8859-1?q?hello=0D=0Aworld?=REs
iso-8859-2s=?iso-8859-2?q?hello?=RHs=?iso-8859-1?q?hello=0Aworld?=shello�heres=?iso-8859-1?q?hello=C7there?=sxxxx iR�i(s�=?iso-8859-1?q?xxxx_xxxx_xxxx_xxxx_xx?=
=?iso-8859-1?q?xx_xxxx_xxxx_xxxx_xxxx?=
=?iso-8859-1?q?_xxxx_xxxx_xxxx_xxxx_x?=
=?iso-8859-1?q?xxx_xxxx_xxxx_xxxx_xxx?=
=?iso-8859-1?q?x_xxxx_xxxx_?=R?s
s�=?iso-8859-1?q?xxxx_xxxx_xxxx_xxxx_xx?=
=?iso-8859-1?q?xx_xxxx_xxxx_xxxx_xxxx?=
=?iso-8859-1?q?_xxxx_xxxx_xxxx_xxxx_x?=
=?iso-8859-1?q?xxx_xxxx_xxxx_xxxx_xxx?=
=?iso-8859-1?q?x_xxxx_xxxx_?=(RARRIRg(R/RCRJ((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRK�s cCsk|j}|tjd�d�|tjd�d�|tjdd�d�|tjdd�d�dS(NRRRDshello
worldRE(RARRf(R/RC((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRF�s
cCs�|j}|tjd�d�|tjd�d�|tjd�d�|tjdd�d�|tjdddd �d
�|tjdddd dd�d
�|tjd�d�dS(NRRshello
worldshello
worldisxxxx iR�i(sjxxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx=
xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxx=
x xxxx xxxx xxxx xxxx=20R?s
slxxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx=
xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxx=
x xxxx xxxx xxxx xxxx=20sone line
two line(RARR�(R/RC((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRG�s (R<R=RR`RbRfRiRkRKRFRG(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRLk
s tTestCharsetcBs,eZd�Zd�Zd�Zd�ZRS(cCs6ddlm}y|jd=Wntk
r1nXdS(Ni�(REtfake(R7REtCHARSETSR�(R/t
CharsetModule((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttearDown�s
cCso|j}td�}d}|j|�}|||j|��d}|j|�}|||j|��dS(Nsus-asciisHello World!s
�����(RARt
to_splittabletfrom_splittable(R/RCR_Rqtsp((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_idempotent�s cCs|j}td�}|d|jd��td�}|d|jd��td�}|d|jd��td�}y3|d |jd
��|d
|jd
t��Wntk
r�nXddlm}|jd
|jd�td
�}|d|jd��dS(Ns
iso-8859-1s
hello w=F6rldshello w�sutf-8saGVsbG8gd29ybGQ=
shello worldsus-asciiseuc-jps$B5FCO;~IW(Bs����i�(RERm(
RARtbody_encodeR�tLookupErrorR7REtadd_charsettQPRG(R/RCR_Ro((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_body_encode�s&
cCs<td�}|jt|�d�|jtjtd�dS(Nuus-asciisus-asciisasc�RRAR(RaRtCharsetError(R/RE((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_unicode_charset_names(R<R=RpRtRyR{(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyRl�s t
TestHeadercBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�Zd
�ZRS(cCsL|j}td�}||j�d�|jd�||j�d�dS(NsHello World!s Goodbye World!sHello World! Goodbye World!(R6RR�R�(R/RCR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_simples
cCsL|j}td�}||j�d�|jd�||j�d�dS(NsHello World!sGoodbye World!sHello World! Goodbye World!(R6RR�R�(R/RCR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_simple_surprises
cCs)d}|jt|�|dfg�dS(Nsno decoding needed(RARRG(R/R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_header_needs_no_decoding#scCsUtddd�}x<|jdd�jd�D]}|jt|�dk�q.WdS(Ns�I am the very model of a modern Major-General; I've information vegetable, animal, and mineral; I know the kings of England, and I quote the fights historical from Marathon to Waterloo, in order categorical; I'm very well acquainted, too, with matters mathematical; I understand equations, both the simple and quadratical; about binomial theorem I'm teeming with a lot o' news, with many cheerful facts about the square of the hypotenuse.R�iLt
splitcharsRs
(RR�R�R|RO(R/R�tl((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt test_long's "cCs|j}td�}td�}td�}d}d}djd�}t||�}|j||�|j||�|j�} || d�|t| �|df|df|dfg�t|�}
||
jd�d�tt| ��}||| �dS( Ns
iso-8859-1s
iso-8859-2sutf-8s�Die Mieter treten hier ein werden mit einem Foerderband komfortabel den Korridor entlang, an s�ndischen Wandgem�en vorbei, gegen die rotierenden Klingen bef�rt. s;Finan� metropole se hroutily pod tlakem jejich d�pu.. u�正確に言うと翻訳はされていません。一部はドイツ語ですが、あとはでたらめです。実際には「Wenn ist das Nunstuck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput.」と言っています。s=?iso-8859-1?q?Die_Mieter_treten_hier_ein_werden_mit_einem_Foerderband_ko?=
=?iso-8859-1?q?mfortabel_den_Korridor_entlang=2C_an_s=FCdl=FCndischen_Wan?=
=?iso-8859-1?q?dgem=E4lden_vorbei=2C_gegen_die_rotierenden_Klingen_bef=F6?=
=?iso-8859-1?q?rdert=2E_?= =?iso-8859-2?q?Finan=E8ni_metropole_se_hroutily?=
=?iso-8859-2?q?_pod_tlakem_jejich_d=F9vtipu=2E=2E_?= =?utf-8?b?5q2j56K6?=
=?utf-8?b?44Gr6KiA44GG44Go57+76Kiz44Gv44GV44KM44Gm44GE44G+44Gb44KT44CC?=
=?utf-8?b?5LiA6YOo44Gv44OJ44Kk44OE6Kqe44Gn44GZ44GM44CB44GC44Go44Gv44Gn?=
=?utf-8?b?44Gf44KJ44KB44Gn44GZ44CC5a6f6Zqb44Gr44Gv44CMV2VubiBpc3QgZGFz?=
=?utf-8?q?_Nunstuck_git_und_Slotermeyer=3F_Ja!_Beiherhund_das_Oder_die_Fl?=
=?utf-8?b?aXBwZXJ3YWxkdCBnZXJzcHV0LuOAjeOBqOiogOOBo+OBpuOBhOOBvuOBmQ==?=
=?utf-8?b?44CC?=s�Die Mieter treten hier ein werden mit einem Foerderband komfortabel den Korridor entlang, an südlündischen Wandgemälden vorbei, gegen die rotierenden Klingen befördert. Finančni metropole se hroutily pod tlakem jejich důvtipu.. 正確に言うと翻訳はされていません。一部はドイツ語ですが、あとはでたらめです。実際には「Wenn ist das Nunstuck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput.」と言っています。(R6RR�RR�RR�R(R/RCRrR�R�R�R�R�R�Retustrtnewh((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_multilingual-s* cCsF|j}t�}||d�|jdtd��||d�dS(NRRks
iso-8859-1s=?iso-8859-1?q?foo?=(R6RR�R(R/RCR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_header_ctor_default_args^s
cCs�|j}d}t|�}||j�d�t|dd�}||j�d�t|dddd�}||j�|�dS(Ns|A very long line that must get split to something other than at the 76th character boundary to test the non-default behaviors}A very long line that must get split to something other than at the 76th
character boundary to test the non-default behaviorR�R�s}A very long line that must get split to something other than at the
76th character boundary to test the non-default behaviorR�i(R6RR�(R/RCR�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_explicit_maxlinelenes cCsN|j}d}t|�}||dg�t|�}|||j��dS(NR(shelloN(RARRGRR�(R/RCRqR�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_us_ascii_headerss cCs3|j}t�}|jdd�||d�dS(NRs
iso-8859-1s=?iso-8859-1?q?hello?=(RARR�(R/RCR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_string_charset{s cCsQ|j}tdd�}||j�d�tdd�}||j�d�dS(Nupöstalsutf-8s=?utf-8?q?p=C3=B6stal?=u菊地時夫s=?utf-8?b?6I+K5Zyw5pmC5aSr?=(RARR�(R/RCR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_utf8_shortest�s
cCs�|j}|j}d}|tt|�t�}|t|j|�|tt|dd��|�|j|dd�|t|�|�dS(Ns0Ynwp4dUEbay Auction Semiar- No Charge �Earn BigRR~(RaRAtUnicodeErrorRR�R((R/RQRCR�R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_bad_8bit_header�s cCsq|j}t�}|jdd�|jd�|j�}||d�tt|��}||j�|�dS(NRs
iso-8859-1tworlds=?iso-8859-1?q?hello?= world(RARR�R�RR(R/RCR�Rq((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt test_encoded_adjacent_nonencoded�s
cCsT|j}d}t|�}||ddd g�t|�}||j�d�dS(
NsGSubject: =?koi8-r?b?8NLP18XSy8EgzsEgxsnOwczYztk=?= =?koi8-r?q?=CA?= zz.sSubject:s��� � �����koi8-rszz.s6Subject: =?koi8-r?b?8NLP18XSy8EgzsEgxsnOwczYztnK?= zz.(sSubject:N(s��� � �����koi8-r(szz.N(RARRGRR�(R/RCRqtpartsthdr((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_whitespace_eater�s cCs&|j}d}|tjt|�dS(NsXSubject: =?EUC-KR?B?CSixpLDtKSC/7Liuvsax4iC6uLmwMcijIKHaILzSwd/H0SC8+LCjwLsgv7W/+Mj3I ?=(RaRRbR(R/RQRq((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_broken_base64_header�s (R<R=R}R~RR�R�R�R�R�R�R�R�R�R�R�(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR|s 1
tTestRFC2231cBs�eZd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZRS(cCsN|j}|jd�}||jd�d�||jddt�d �dS(
Ns
msg_29.txtttitlesus-asciitens%This is even more ***fun*** isn't it!R�s'"This is even more ***fun*** isn't it!"(sus-asciiR�s%This is even more ***fun*** isn't it!(sus-asciiR�s'"This is even more ***fun*** isn't it!"(RAR;RJR�(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR��s cCs�|j}t�}|jdddd�||jd�d
�|jdddddd�||jd�d�|jd�}|jdddddd�|j|j�d �dS(NR�s%This is even more ***fun*** isn't it!REsus-asciiRtlanguageR�s
msg_01.txts$Return-Path: <bbb@zzz.org>
Delivered-To: bbb@zzz.org
Received: by mail.zzz.org (Postfix, from userid 889)
id 27CEAD38CC; Fri, 4 May 2001 14:05:44 -0400 (EDT)
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Message-ID: <15090.61304.110929.45684@aaa.zzz.org>
From: bbb@ddd.com (John X. Doe)
To: bbb@zzz.org
Subject: This is a test message
Date: Fri, 4 May 2001 14:05:44 -0400
Content-Type: text/plain; charset=us-ascii;
title*="us-ascii'en'This%20is%20even%20more%20%2A%2A%2Afun%2A%2A%2A%20isn%27t%20it%21"
Hi,
Do you like this message?
-Me
(sus-asciiRs%This is even more ***fun*** isn't it!(sus-asciisens%This is even more ***fun*** isn't it!(RAR R�RJR;R6R(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR��s
cCsz|j}|jd�}|jdddddd�|jdd dddd�|jdd
d�||j�d�dS(
Ns
msg_01.txtRkR�REsus-asciiR�R�R�s%This is even more ***fun*** isn't it!RcsContent-Types&Return-Path: <bbb@zzz.org>
Delivered-To: bbb@zzz.org
Received: by mail.zzz.org (Postfix, from userid 889)
id 27CEAD38CC; Fri, 4 May 2001 14:05:44 -0400 (EDT)
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Message-ID: <15090.61304.110929.45684@aaa.zzz.org>
From: bbb@ddd.com (John X. Doe)
To: bbb@zzz.org
Subject: This is a test message
Date: Fri, 4 May 2001 14:05:44 -0400
Content-Type: text/plain; charset="us-ascii";
title*="us-ascii'en'This%20is%20even%20more%20%2A%2A%2Afun%2A%2A%2A%20isn%27t%20it%21"
Hi,
Do you like this message?
-Me
(R6R;R�R�R(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR��s
cCs/|j}|jd�}||j�d�dS(Ns
msg_32.txtsus-ascii(RAR;tget_content_charset(R/RCR:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt test_rfc2231_get_content_charsets cCsNd}tj|�}|jd�}|jt|t��|j|d�dS(NsContent-Transfer-Encoding: 8bit
Content-Disposition: inline; filename="file____C__DOCUMENTS_20AND_20SETTINGS_FABIEN_LOCAL_20SETTINGS_TEMP_nsmail.htm"
Content-Type: text/html; NAME*0=file____C__DOCUMENTS_20AND_20SETTINGS_FABIEN_LOCAL_20SETTINGS_TEM; NAME*1=P_nsmail.htm
tNAMEsMfile____C__DOCUMENTS_20AND_20SETTINGS_FABIEN_LOCAL_20SETTINGS_TEMP_nsmail.htm(R7R�RJR�RpttupleRA(R/R
R:tparam((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt#test_rfc2231_no_language_or_charsetscCs/d}tj|�}|j|j�d�dS(Ns�Content-Disposition: inline;
filename*0*="''This%20is%20even%20more%20";
filename*1*="%2A%2A%2Afun%2A%2A%2A%20";
filename*2="is it not.pdf"
s)This is even more ***fun*** is it not.pdf(R7R�RARU(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt/test_rfc2231_no_language_or_charset_in_filenamescCs/d}tj|�}|j|j�d�dS(Ns�Content-Disposition: inline;
filename*0*="''This%20is%20even%20more%20";
filename*1*="%2A%2A%2Afun%2A%2A%2A%20";
filename*2="is it not.pdf"
s)This is even more ***fun*** is it not.pdf(R7R�RARU(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt7test_rfc2231_no_language_or_charset_in_filename_encoded"scCs/d}tj|�}|j|j�d�dS(Ns�Content-Disposition: inline;
filename*0="''This%20is%20even%20more%20";
filename*1*="%2A%2A%2Afun%2A%2A%2A%20";
filename*2="is it not.pdf"
s1This%20is%20even%20more%20***fun*** is it not.pdf(R7R�RARU(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2231_partly_encoded.s
cCs/d}tj|�}|j|j�d�dS(Ns�Content-Disposition: inline;
filename*0="This%20is%20even%20more%20";
filename*1="%2A%2A%2Afun%2A%2A%2A%20";
filename*2="is it not.pdf"
s?This%20is%20even%20more%20%2A%2A%2Afun%2A%2A%2A%20is it not.pdf(R7R�RARU(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2231_partly_nonencoded;s
cCs/d}tj|�}|j|j�d�dS(Ns�Content-Type: multipart/alternative;
boundary*0*="''This%20is%20even%20more%20";
boundary*1*="%2A%2A%2Afun%2A%2A%2A%20";
boundary*2="is it not.pdf"
s)This is even more ***fun*** is it not.pdf(R7R�RAR\(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt/test_rfc2231_no_language_or_charset_in_boundaryHscCs/d}tj|�}|j|j�d�dS(Ns�Content-Type: text/plain;
charset*0*="This%20is%20even%20more%20";
charset*1*="%2A%2A%2Afun%2A%2A%2A%20";
charset*2="is it not.pdf"
s)this is even more ***fun*** is it not.pdf(R7R�RAR�(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt.test_rfc2231_no_language_or_charset_in_charsetTscCs/d}tj|�}|j|j�d�dS(Ns�Content-Disposition: inline;
filename*0*="bogus'xx'This%20is%20even%20more%20";
filename*1*="%2A%2A%2Afun%2A%2A%2A%20";
filename*2="is it not.pdf"
s)This is even more ***fun*** is it not.pdf(R7R�RARU(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt%test_rfc2231_bad_encoding_in_filenameascCs/d}tj|�}|j|j�d�dS(Ns:Content-Type: text/plain; charset*=bogus''utf-8%E2%80%9D
(R7R�RAR�RG(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt$test_rfc2231_bad_encoding_in_charsetmscCs/d}tj|�}|j|j�d�dS(Ns:Content-Type: text/plain; charset*=ascii''utf-8%E2%80%9D
(R7R�RAR�RG(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt%test_rfc2231_bad_character_in_charsetwscCs/d}tj|�}|j|j�d�dS(Ns�Content-Disposition: inline;
filename*0*="ascii'xx'This%20is%20even%20more%20";
filename*1*="%2A%2A%2Afun%2A%2A%2A%20";
filename*2*="is it not.pdf%E2"
u,This is even more ***fun*** is it not.pdf�(R7R�RARU(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt&test_rfc2231_bad_character_in_filename�scCs/d}tj|�}|j|j�d�dS(Ns^Content-Transfer-Encoding: 8bit
Content-Disposition: inline; filename*=X-UNKNOWN''myfile.txt
s
myfile.txt(R7R�RARU(R/R
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2231_unknown_encoding�scCsa|j}d}tj|�}|jd�\}}}||d�||d�||d�dS(NsJContent-Type: application/x-foo;
name*0*="Frank's"; name*1*=" Document"
R�sFrank's Document(RAR7R�RJRG(R/RCR
R:RER�Rq((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt-test_rfc2231_single_tick_in_filename_extended�s
cCsNd}tj|�}|jd�}|jt|t��|j|d�dS(NsGContent-Type: application/x-foo; name*0="Frank's"; name*1=" Document"
R�sFrank's Document(R7R�RJR�RpR�RA(R/R
R:R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt$test_rfc2231_single_tick_in_filename�s
cCsa|j}d}tj|�}|jd�\}}}||d�||d�||d�dS(NsYContent-Type: application/x-foo;
name*0*="us-ascii'en-us'Frank's"; name*1*=" Document"
R�sus-asciisen-ussFrank's Document(RAR7R�RJ(R/RCR
R:RER�Rq((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt!test_rfc2231_tick_attack_extended�s
cCsNd}tj|�}|jd�}|jt|t��|j|d�dS(NsWContent-Type: application/x-foo;
name*0="us-ascii'en-us'Frank's"; name*1=" Document"
R�sus-ascii'en-us'Frank's Document(R7R�RJR�RpR�RA(R/R
R:R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2231_tick_attack�s
cCs8|j}d}tj|�}||jd�d�dS(Ns:Content-Type: application/x-foo; name="Frank's Document"
R�sFrank's Document(RAR7R�RJ(R/RCR
R:((s3/sys/lib/python2.7/email/test/test_email_renamed.pyttest_rfc2231_no_extended_values�s cCsa|j}d}tj|�}|jd�\}}}||d�||d�||d�dS(NsiContent-Type: application/x-foo;
name*0*="us-ascii'en-us'My";
name*1=" Document";
name*2*=" For You"
R�sus-asciisen-ussMy Document For You(RAR7R�RJ(R/RCR
R:RER�Rq((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt,test_rfc2231_encoded_then_unencoded_segments�s
cCsa|j}d}tj|�}|jd�\}}}||d�||d�||d�dS(NsiContent-Type: application/x-foo;
name*0="us-ascii'en-us'My";
name*1*=" Document";
name*2*=" For You"
R�sus-asciisen-ussMy Document For You(RAR7R�RJ(R/RCR
R:RER�Rq((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt,test_rfc2231_unencoded_then_encoded_segments�s
(R<R=R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�R�(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR��s. %
cCsBtjt}gt|�D]$}|jd�rt||�^qS(NR�(tsystmodulesR<tdirR�tgetattr(tmodR�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt_testclasses�s
cCs:tj�}x't�D]}|jtj|��qW|S(N(tunittestt TestSuiteR�taddTestt makeSuite(tsuitet testclass((s3/sys/lib/python2.7/email/test/test_email_renamed.pyR��scCs"xt�D]}t|�q
WdS(N(R�R(R�((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt test_main�st__main__tdefaultTestR�(RRR�RAR�R)R�twarningst cStringIORR7t
email.charsetRtemail.headerRRRtemail.parserRRtemail.generatorRRt
email.messageR temail.mime.applicationR
temail.mime.audioRtemail.mime.textRtemail.mime.imageR
temail.mime.baseRtemail.mime.messageRtemail.mime.multipartRRRRRRRttest.test_supportRRt
email.testRR"R,RR�R&tTestCaseR'R>R�R�RRR$R(R4R:RlR�R�R�R�RR$R>RLRlR|R�R�R�R�R<tmain(((s3/sys/lib/python2.7/email/test/test_email_renamed.pyt<module>s���"1+1�r/���;�Ho:��
|