ó ükWc@sŮdZddlZddlZddlZddlmZmZmZddlm Z ddl m Z ddl m Z ejeedƒdƒZd e jejfd „ƒYZd „Zed krŐe eƒƒndS( sTests for distutils.file_util.i˙˙˙˙N(t move_filet write_filet copy_file(tlog(tsupport(t run_unittesttlinkstest requires os.link()tFileUtilTestCasecBs\eZd„Zd„Zd„Zd„Zd„Zd„Zed„ƒZ ed„ƒZ RS(cGs=t|ƒdkr)|jj||ƒn|jj|ƒdS(Ni(tlent_logstappend(tselftmsgtargs((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyt_logscCsŒtt|ƒjƒg|_tj|_|jt_|jƒ}t j j |dƒ|_ t j j |dƒ|_ t j j |dƒ|_dS(Ntf1tf2td1(tsuperRtsetUpR Rtinfotold_logRtmkdtemptostpathtjointsourcettargett target_dir(R ttmp_dir((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyRs    cCs#|jt_tt|ƒjƒdS(N(RRRRRttearDown(R ((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyR"s cCs<t|jdƒ}z|jdƒWd|jƒXt|j|jddƒg}|j|j|ƒt|j|jddƒt|j|jddƒd|j|jfg}|j|j|ƒt|j|jddƒg|_tj |j ƒt|j|j ddƒd|j|j fg}|j|j|ƒdS(Ntws some contenttverboseiismoving %s -> %s( topenRtwritetcloseRRt assertEqualR RtmkdirR(R tftwanted((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyttest_move_file_verbosity&s"  cCs|dddg}|jƒ}tjj|dƒ}t||ƒgt|ƒjƒD]}|jƒ^qP}|j||ƒdS(Ntatbtctfoo( RRRRRR!t readlineststripR$(R tlinestdirR,tlinetcontent((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyttest_write_fileBs   +cCss|jƒ}tjj|dƒ}t|dƒ|jƒ}t||ƒ|jtjjtjj|dƒƒƒdS(NR,R2(RRRRRRt assertTruetexists(R tsrc_dirR,tdst_dir((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyttest_copy_fileJs     cCsöt|jdƒ}|jdƒWdQXtj|jƒ}t|j|jddƒtj|jƒ}tj|jƒ}|jtjj ||ƒ||fƒ|jtjj ||ƒ||fƒt|jdƒ}|j |j ƒdƒWdQXdS(NRs some contentRthardtr( R!RR"RtstatRRR4RtsamestatR$tread(R R&tsttst2tst3((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyttest_copy_file_hard_linkRs%%c Cs<t|jdƒ}|jdƒWdQXtj|jƒ}d„}tj}|t_zt|j|jddƒWd|t_Xtj|jƒ}tj|jƒ}|jtj j ||ƒ||fƒ|j tj j ||ƒ||fƒxH|j|jfD]4}t|dƒ}|j |j ƒdƒWdQXqWdS(NRs some contentcWstddƒ‚dS(Nislinking unsupported(tOSError(R ((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyt_os_linkgsRR9R:(R!RR"RR;RRRR4RR<t assertFalseR$R=(R R&R>RCtold_linkR?R@tfn((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyt test_copy_file_hard_link_failure_s     %%( t__name__t __module__RRRR(R3R8trequires_os_linkRARG(((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyRs      cCs tjtƒS(N(tunittestt makeSuiteR(((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyt test_suitexst__main__(t__doc__RKRtshutiltdistutils.file_utilRRRt distutilsRtdistutils.testsRttest.test_supportRt skipUnlessthasattrRJtTempdirManagertTestCaseRRMRH(((s4/usr/lib/python2.7/distutils/tests/test_file_util.pyts    h