ó {G_Tc@svddlZddlZddlmZmZddlZdejfd„ƒYZd„Ze dkrreƒndS(iÿÿÿÿN(tTESTFNt run_unittestt TestFilemodec BsíeZdddddddddd d d h Zd d dddddhZdddddddhZi dd6dd6dd6d d!6d"d#6d$d%6d&d'6d(d)6d*d+6d,d-6Zid.d/6d0d16d0d26d3d46d5d66d7d86d7d96d:d;6d:d<6d=d>6d=d?6d@dA6dBdC6dDdE6d*dF6d(dG6d"dH6ddI6ddJ6ZdK„ZeZe e dL„Z dM„Z dN„Z dO„ZejeedPƒdQƒdR„ƒZejeedSƒdTƒdU„ƒZejejdVkdWƒdX„ƒZdY„ZRS(Zt SF_APPENDt SF_ARCHIVEDt SF_IMMUTABLEt SF_NOUNLINKt SF_SNAPSHOTt UF_APPENDt UF_COMPRESSEDt UF_HIDDENt UF_IMMUTABLEt UF_NODUMPt UF_NOUNLINKt UF_OPAQUEtS_IFBLKtS_IFCHRtS_IFDIRtS_IFIFOtS_IFLNKtS_IFREGtS_IFSOCKtS_ISBLKtS_ISCHRtS_ISDIRtS_ISFIFOtS_ISLNKtS_ISREGtS_ISSOCKitST_MODEitST_INOitST_DEVitST_NLINKitST_UIDitST_GIDitST_SIZEitST_ATIMEitST_MTIMEi tST_CTIMEitS_ISUIDitS_ISGIDtS_ENFMTitS_ISVTXiÀtS_IRWXUitS_IRUSRtS_IREADi€tS_IWUSRtS_IWRITEi@tS_IXUSRtS_IEXECi8tS_IRWXGi tS_IRGRPitS_IWGRPtS_IXGRPtS_IRWXOtS_IROTHtS_IWOTHtS_IXOTHcCsNytjtƒWn6tk rIytjtƒWqJtk rEqJXnXdS(N(tostremoveRtOSErrortrmdir(tself((s*/usr/local/lib/python2.7/test/test_stat.pytsetUp3s  cCs1|rtj|ƒj}ntj|ƒj}|S(N(R:tlstattst_modetstat(R>tfnameR@RA((s*/usr/local/lib/python2.7/test/test_stat.pytget_mode=scCsËttd|jdƒƒ}|jtj|ƒ|ƒd|}x…|jD]z}tt|dƒ}|dkrŽ||krIt|ƒ‚qIqIn||kr°|j||ƒƒqI|j ||ƒƒqIWdS(NtS_IFtFtS_IS( tgetattrRBtlstript assertEqualtS_IFMTt format_funcstNonet ValueErrort assertTruet assertFalse(R>tnametmodetfmtttestnametfuncnametfunc((s*/usr/local/lib/python2.7/test/test_stat.pyt assertS_ISDs    cCs‘ttdƒWdQXtjdkrEtjtdƒ|jƒ}|jd|ƒ|jtj |ƒtj ƒtjtdƒ|jƒ}|jd|ƒ|jtj |ƒtj ƒtjtdƒ|jƒ}|jd|ƒ|jtj |ƒtj ƒtjtdƒ|jƒ}|jd|ƒ|jtj |ƒdƒnHtjtdƒ|jƒ}|jd|ƒ|jtj |ƒtjƒdS(NtwtposixiÀtREGi8ii$(topenRR:RQtchmodRDRWRJRBtS_IMODER+R2R6RKR(R>RA((s*/usr/local/lib/python2.7/test/test_stat.pyt test_modeUs6        cCs=tjtƒtjtdƒ|jƒ}|jd|ƒdS(NiÀtDIR(R:tmkdirRR\RDRW(R>RA((s*/usr/local/lib/python2.7/test/test_stat.pyttest_directoryvs  tsymlinksos.symlink not availablecCskytjtjƒtƒWn.ttfk rJ}tjt|ƒƒ‚nX|j ƒ}|j d|ƒdS(NtLNK( R:RbtgetcwdRR<tNotImplementedErrortunittesttSkipTesttstrRDRW(R>terrRA((s*/usr/local/lib/python2.7/test/test_stat.pyt test_link|s  tmkfifosos.mkfifo not availablecCs0tjtdƒ|jƒ}|jd|ƒdS(NiÀtFIFO(R:RkRRDRW(R>RA((s*/usr/local/lib/python2.7/test/test_stat.pyt test_fifo†s RYsrequires PosixcCstjjtjƒr@|jtjdtƒ}|jd|ƒnxIdD]A}tjj|ƒrG|j|dtƒ}|jd|ƒPqGqGWdS(NR@tCHRs/dev/sdas/dev/hdatBLK(s/dev/sdas/dev/hda(R:tpathtexiststdevnullRDtFalseRW(R>RAtblockdev((s*/usr/local/lib/python2.7/test/test_stat.pyt test_devicesŒs cCs:x?|jjƒD].\}}tt|ƒ}|j|||ƒqWx?|jjƒD].\}}tt|ƒ}|j|||ƒqRWx0|jD]%}tt|ƒ}|j|tƒqŽWx0|j D]%}tt|ƒ}|j|tƒqÁWxI|j D]>}tt|ƒ}|j t |ƒƒ|j|dƒdƒqôWdS(Ni( t stat_structtitemsRHRBRJtpermission_bitst file_flagstassertIsInstancetinttformatsRLROtcallable(R>tkeytvaluetmodvalueRV((s*/usr/local/lib/python2.7/test/test_stat.pyttest_module_attributes˜s (t__name__t __module__RyR|RLRvRxR?ttearDownRtTrueRDRWR^RaRft skipUnlessthasattrR:RjRmRQRuR(((s*/usr/local/lib/python2.7/test/test_stat.pyRs`         ! $ $$ cCsttƒdS(N(RR(((s*/usr/local/lib/python2.7/test/test_stat.pyt test_main«st__main__( RfR:ttest.test_supportRRRBtTestCaseRRˆR‚(((s*/usr/local/lib/python2.7/test/test_stat.pyts   ¥