ó |G_Tc@sådZddlZddlZddlmZddlmZddlmZddl m Z ddl m Z ddl mZmZdZd Zd efd „ƒYZd efd „ƒYZd„ZedkráeeƒƒndS(s#Tests for distutils.command.upload.iÿÿÿÿN(t run_unittest(tupload(t Distribution(tDistutilsError(tPYPIRCtPyPIRCCommandTestCasesñ[distutils] index-servers = server1 server2 [server1] username:me password:aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa [server2] username:meagain password: secret realm:acme repository:http://another.pypi/ s@[distutils] index-servers = server1 [server1] username:me tFakeOpencBs eZddd„Zd„ZRS(cCsO||_t|tƒs$||_n d|_|p6d|_|pEd|_dS(NtOKiÈ(turlt isinstancetstrtreqtNonetmsgtcode(tselfRR R((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyt__init__-s    cCs|jS(N(R(R((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pytgetcode6sN(t__name__t __module__R RR(((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyR+s tuploadTestCasecBsGeZd„Zd„Zd„Zd„Zd„Zd„Zd„ZRS(cCsJtt|ƒjƒtj|_|jt_d|_d|_ d|_ dS(N( tsuperRtsetUpt upload_modturlopentold_opent_urlopenR t last_opentnext_msgt next_code(R((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyR<s     cCs#|jt_tt|ƒjƒdS(N(RRRRRttearDown(R((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyRDs cCs(t|d|jd|jƒ|_|jS(NR R(RRRR(RR((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyRHs!cCsr|j|jtƒtƒ}t|ƒ}|jƒx9d d d d fD]%\}}|jt||ƒ|ƒqEWdS( Ntusernametmetpasswordtsecrettrealmtpypit repositoryshttps://pypi.python.org/pypi(RR (spasswordR"(R#R$(R%shttps://pypi.python.org/pypi(t write_filetrcRRRtfinalize_optionst assertEqualtgetattr(Rtdisttcmdtattrtwaited((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyttest_finalize_optionsLs    cCs{|j|jtƒtƒ}t|ƒ}|jƒ|j|jdƒd|_t|ƒ}|jƒ|j|jdƒdS(Ntxxx( R&R'tPYPIRC_NOPASSWORDRRR(R)R!R (RR+R,((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyttest_saved_passwordXs      c Csy|jƒ}tjj|dƒ}|j|ƒdd|}}}|||fg}|j|jtƒ|jd|ddƒ\}}t|ƒ} | j ƒ| j ƒ|j d|j j jƒt|j j jƒ} |j| ddƒ|j| d jd ƒƒ|j|j j jƒd ƒ|j|j j jƒd ƒ|j d|j j jƒ|j j jd } |jd| ƒdS(NR0s2.6t dist_filestauthorudédésdédésContent-lengtht2085s Content-typesmultipart/form-datatPOSTshttps://pypi.python.org/pypit Authorizations (tmkdtemptostpathtjoinR&R'tPYPIRC_LONG_PASSWORDt create_distRtensure_finalizedtruntassertInRR tdatatdicttheadersR)t assertTruet startswitht get_methodt get_full_urlt assertNotIn( RttmpR:tcommandt pyversiontfilenameR3tpkg_dirR+R,RCtauth((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyt test_uploadis(     cCs)d|_d|_|jt|jƒdS(Ns Not Foundi”(RRt assertRaisesRRO(R((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyttest_upload_failsƒs  ( RRRRRR/R2RORQ(((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyR:s     cCs tjtƒS(N(tunittestt makeSuiteR(((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyt test_suiteˆst__main__(t__doc__R9RRttest.test_supportRtdistutils.commandRRtdistutils.command.uploadtdistutils.coreRtdistutils.errorsRtdistutils.tests.test_configRRR<R1tobjectRRRTR(((s7/usr/local/lib/python2.7/distutils/tests/test_upload.pyts   N