a  ze@s~ddlZddlZddlZddlZddlmZddlmZddlm Z ddl m Z ddZ dd ZGd d d ejZd d ZdS)N)Message)compat32)load_package_tests)__file__cGsttjtg|RSN)rospathdirnamer)argsr L/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_email/__init__.py load_tests sr cOs.tjtjtd|}t|g|Ri|S)Ndata)rrjoinr landmarkopen)filenamer kwsrr r r openfilesrcsleZdZdZeZeZfddZe j j Z ddZ dddZddd Zd d Zd d ZddZddZZS) TestEmailBaseNcs$tj|i||t|jdSr)super__init__ZaddTypeEqualityFuncbytesassertBytesEqual)selfr kw __class__r r r!szTestEmailBase.__init__cCs<t| }tj||jdWdS1s.0YdSN)policy)remailZmessage_from_filer)rrfpr r r _msgobj(s zTestEmailBase._msgobjcCs,|dur|j}|dur|j}tj|||dSr)rmessager Zmessage_from_string)rstringr#rr r r _str_msg,s zTestEmailBase._str_msgcCs,|dur|j}|dur|j}tj|||dSr)rr#r Zmessage_from_bytes)rZ bytestringr#rr r r _bytes_msg3s zTestEmailBase._bytes_msgcCs|j|jdSr)r#r)rr r r _make_message:szTestEmailBase._make_messagecCsdd|jddDS)NcSsg|] }t|qSr )repr).0xr r r >z-TestEmailBase._bytes_repr..T)keepends) splitlines)rbr r r _bytes_repr=szTestEmailBase._bytes_reprcCs|||||dSr) assertEqualr0)rfirstsecondmsgr r r r@szTestEmailBase.assertBytesEqualcCsH|t|t||tt|D] }|||||d|q"dS)Nzitem {})r1lenrangeZassertIsInstanceformat)ractualZexpectedir r r assertDefectsEqualDs z TestEmailBase.assertDefectsEqual)NN)NN)__name__ __module__ __qualname__ZmaxDiffrrrr#runittestTestCaser1ZndiffAssertEqualr"r%r&r'r0rr: __classcell__r r rr rs   rcCsi}tt}|jD]\}}|drt|dszi}|D]8}t|dsP|f}ddd|Ddd}|||<q<|}|||ddd <d |vr|| d d d  |qi}|D]}||vrt d |q|D]}||vrt d |q|jD]\}}|D]\} } | | rd |t| d} | D]N\} } t| drf|| fdd}n|| fdd}| d| }||_|||<qBqq|D]\}}t|||q|S)NZ_paramskeys__iter___css|]}t|VqdSr)str)r)vr r r r,zparameterize.. iZ_as_rzNo tester found for {}zNo params found for {}Ztest_cSst||fi|Srgetattrrnameparamsr r r szparameterize..cSst|||SrrHrJr r r rMs) collections defaultdictlist__dict__itemsendswithhasattrrreplacesplitappend ValueErrorr7 startswithr5r;setattr)clsZ paramdictsZtestersrKattrdr*nZ testfuncsZ paramsnameZ paramsdictZ testnamerootZ paramnamerLtestZtestnamekeyvaluer r r parameterizeKsH5        rb)rr>rNr Z email.messagerZemail._policybaserZ test.supportrZtest.test_emailrrr rr?rrbr r r r s    4