
    7bhZ                         	 d dl Z d dlZd dlZd dlZd dlZd dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ ddZ G d d	      Z G d
 deej                        Z G d de      Z G d dej                        Zedk(  r ej(                          yy)    N)is_emscripten)	os_helper)warnings_helper)assert_python_ok)FakePathc                 j    t        | dd      5 }|j                  |       d d d        y # 1 sw Y   y xY w)Nxbr   )openwrite)filenamedatafps      ?/opt/python-3.12.12/usr/lib/python3.12/test/test_genericpath.pycreate_filer      s'    	ha	 B
 
!	 	 s   )2c                      e Zd Zg dZg Zd Zd Zd Zd Zd Z	 e
j                   eed      d       e
j                  ed	      d
               Zd Zd Zd Zd Zej,                  d        Z e
j                   eed      d      d        Zd Zd Zej,                  d        Z e
j                   eed      d      d        Zd Zy)GenericTest)commonprefixgetsizegetatimegetctimegetmtimeexistsisdirisfilec                 "   | j                   | j                  z   D ]g  }| j                  t              5   t	        | j
                  |              | j                  dj                  | j
                  j                  |             y # 1 sw Y   txY w)Nz!{}.{}() did not raise a TypeError)	common_attributes
attributesassertRaises	TypeErrorgetattr
pathmodulefailformat__name__)selfattrs     r   test_no_argumentzGenericTest.test_no_argument   so    **T__<D""9-..0ii C!'(@(@$!GI I =--s   ABB	c           	         | j                   j                  }| j                   |g       d       | j                   |ddg      d       | j                   |ddg      d       | j                   |ddg      d       | j                   |ddg      d	       | j                   |d
dg      d       | j                   |d
d
g      d
       | j                   |ddg      d       | j                   |ddg      d       | j                   |ddg      d       | j                   |ddg      d       | j                   |ddg      d       | j                   |ddg      d       g d}|D ]  }|D ]{  } |||g      }| j                  |j	                  |             | j                  |j	                  |             ||k7  sSt        |      }| j                  |||dz    |||dz           }  y )N z/home/swenson/spamz/home/swen/spamz
/home/swenz/home/swen/eggsz/home/swen/zhome:swenson:spamzhome:swen:spamz	home:swenz:home:swen:spamz:home:swen:eggsz:home:swen:s   /home/swenson/spams   /home/swen/spams
   /home/swens   /home/swen/eggss   /home/swen/s   home:swenson:spams   home:swen:spams	   home:swens   :home:swen:spams   :home:swen:eggss   :home:swen:)r)   abcXbcdXbXYabcdaXcabdabaXabcX   )r!   r   assertEqual
assertTrue
startswithlenassertNotEqual)r%   r   testlists1s2pns          r   test_commonprefixzGenericTest.test_commonprefix"   sI   33	
 	.0ABC	
 	+->?@	
 	+->?@	
 	-/?@A	
 	+->?@	
 	+->?@	

 	/1CDE	
 	,.@AB	
 	,.@AB	
 	.0ABC	
 	,.@AB	
 	,.@AB	

6B "b*a 01a 018AA''1QqS	2a!9=      c                 j   t         j                  }| j                  t         j                  |       t	        |d       | j                  | j                  j                  |      d       t        j                  |       t	        |d       | j                  | j                  j                  |      d       y )Ns   Hello   s   Hello World!   )
r   TESTFN
addCleanupunlinkr   r5   r!   r   osremove)r%   r   s     r   test_getsizezGenericTest.test_getsizee   s    ##	(((3Hh'00:A>
		(Ho.00:B?r@   c                    t         j                  }| j                  t         j                  |       t	        |d       t        |dd      5 }|j                  d       d d d        t        |dd      5 }|j                         }d d d        | j                  d       | j                  | j                  j                  |      | j                  j                  |             y # 1 sw Y   xY w# 1 sw Y   lxY w)N   foor1   r      barrbs   foobar)r   rD   rE   rF   r   r
   r   readr5   assertLessEqualr!   r   r   )r%   r   fr   s       r   test_filetimezGenericTest.test_filetimep   s    ##	(((3Hf%(D!$GGFO % (D!$668D %y)OO$$X.OO$$X.	
 %$ %$s   
C!1C-!C*-C6c                 T   t         j                  }t        j                  |      }| j	                  t         j
                  |       | j                  | j                  j                  |      d       | j                  | j                  j                  |      d       | j                  t        urV| j                  | j                  j                  |      d       | j                  | j                  j                  |      d       t        |       | j                  | j                  j                  |      d       | j                  | j                  j                  |      d       | j                  | j                  j                  |dz         d       | j                  | j                  j                  |dz         d       | j                  | j                  j                  |dz         d       | j                  | j                  j                  |dz         d       | j                  t        ur| j                  | j                  j                  |      d       | j                  | j                  j                  |      d       | j                  | j                  j                  |dz         d       | j                  | j                  j                  |dz         d       | j                  | j                  j                  |dz         d       | j                  | j                  j                  |dz         d       | j                  | j                  j                  |      d       | j                  t        ur-| j                  | j                  j                  |      d       y y )NFT           )path)r   rD   rG   fsencoderE   rF   assertIsr!   r   genericpathlexistsr   r%   r   	bfilenames      r   test_existszGenericTest.test_exists   s   ##KK)		(((3doo,,X6>doo,,Y7???+-MM$//11(;UCMM$//11)<eDHdoo,,X6=doo,,Y7>doo,,X-@A5Idoo,,Y-@A5Idoo,,X->?Gdoo,,Y-@A5I??+-MM$//11(;TBMM$//11)<dCMM$//11(X2EFNMM$//11)g2EFNMM$//11(V2CDeLMM$//11)g2EFN 	doo,,(,;TB??+-MM$//11x1@$G .r@   pipezrequires os.pipe()z Emscripten pipe fds have no statc                    t        j                         \  }}	 | j                  | j                  j	                  |             t        j
                  |       t        j
                  |       | j                  | j                  j	                  |             y # t        j
                  |       t        j
                  |       w xY wN)rG   r_   r6   r!   r   closeassertFalse)r%   rws      r   test_exists_fdzGenericTest.test_exists_fd   s     wwy1	OODOO22156HHQKHHQK//23 HHQKHHQKs   *B ,Cc                    t         j                  }t        j                  |      }| j	                  | j
                  j                  |      d       | j	                  | j
                  j                  |      d       | j	                  | j
                  j                  |dz         d       | j	                  | j
                  j                  |dz         d       | j	                  | j
                  j                  |dz         d       | j	                  | j
                  j                  |dz         d       	 t        |       | j	                  | j
                  j                  |      d       | j	                  | j
                  j                  |      d       t        j                  |       	 t        j                  |       | j	                  | j
                  j                  |      d       | j	                  | j
                  j                  |      d       t        j                  |       y # t        j                  |       w xY w# t        j                  |       w xY wNFrS   rT   rU   rV   T)r   rD   rG   rX   rY   r!   r   r   rF   mkdirrmdirr\   s      r   
test_isdirzGenericTest.test_isdir   s   ##KK)	doo++H5u=doo++I6>doo++Hx,?@%Hdoo++I,?@%Hdoo++Hv,=>Fdoo++I,?@%H	'!MM$////95AMM$////	:EBX&	&HHXMM$////94@MM$////	:DAOOH% X& OOH%   5A!H- ,A+I -IIc                    t         j                  }t        j                  |      }| j	                  | j
                  j                  |      d       | j	                  | j
                  j                  |      d       | j	                  | j
                  j                  |dz         d       | j	                  | j
                  j                  |dz         d       | j	                  | j
                  j                  |dz         d       | j	                  | j
                  j                  |dz         d       	 t        |       | j	                  | j
                  j                  |      d       | j	                  | j
                  j                  |      d       t        j                  |       	 t        j                  |       | j	                  | j
                  j                  |      d       | j	                  | j
                  j                  |      d       t        j                  |       y # t        j                  |       w xY w# t        j                  |       w xY wrh   )r   rD   rG   rX   rY   r!   r   r   rF   ri   rj   r\   s      r   test_isfilezGenericTest.test_isfile   s   ##KK)	doo,,X6>doo,,Y7?doo,,X-@A5Idoo,,Y-@A5Idoo,,X->?Gdoo,,Y-@A5I	'!MM$//00:DAMM$//00;TBX&	&HHXMM$//00:EBMM$//00;UCOOH% X& OOH%rl   c                    t         j                  }t         j                  dz   }| j                  t         j                  |       | j                  t         j                  |       t	        |       | j                  | j                  j                  ||             t	        |       | j                  | j                  j                  ||             | j                  t        | j                  j                         y N2)r   rD   rE   rF   r   r6   r!   samefilerc   r   r   )r%   file1file2s      r   test_samefilezGenericTest.test_samefile   s        3&	((%0	((%0E00>?E11%?@)T__%=%=>r@   c                    t         j                  }t         j                  dz   }| j                  t         j                  |       | j                  t         j                  |       t	        |        |||       | j                  | j                  j                  ||             t        j                  |       t	        |       | j                  | j                  j                  ||             y rp   )r   rD   rE   rF   r   r6   r!   rr   rG   rH   rc   r%   functest_fn1test_fn2s       r   _test_samefile_on_link_funcz'GenericTest._test_samefile_on_link_func   s    ####c)	(((3	(((3HXx 008DE
		(H11(HEFr@   c                 B    | j                  t        j                         y ra   )r{   rG   symlinkr%   s    r   test_samefile_on_symlinkz$GenericTest.test_samefile_on_symlink       ((4r@   linkzrequires os.linkc                     	 | j                  t        j                         y # t        $ r}| j	                  d|z         Y d }~y d }~ww xY wNzos.link(): %s)r{   rG   r   PermissionErrorskipTestr%   es     r   test_samefile_on_linkz!GenericTest.test_samefile_on_link  =    	/,,RWW5 	/MM/A-..	/   " 	A	AA	c                 p   t         j                  }t         j                  dz   }| j                  t         j                  |       | j                  t         j                  |       t	        |       t        j                  |      }| j                  | j                  j                  |t        j                  |                   t	        |       t        j                  |      }| j                  | j                  j                  ||             | j                  t        | j                  j                         y rp   )r   rD   rE   rF   r   rG   statr6   r!   samestatrc   r   r   )r%   ry   rz   stat1stat2s        r   test_samestatzGenericTest.test_samestat  s    ####c)	(((3	(((3H!008IJKH!11%?@)T__%=%=>r@   c                 |   t         j                  dz   }t         j                  dz   }| j                  t         j                  |       | j                  t         j                  |       t	        |        |||       | j                  | j                  j                  t        j                  |      t        j                  |                   t        j                  |       t	        |       | j                  | j                  j                  t        j                  |      t        j                  |                   y )N1rq   )r   rD   rE   rF   r   r6   r!   r   rG   r   rH   rc   rw   s       r   _test_samestat_on_link_funcz'GenericTest._test_samestat_on_link_func  s    ##c)##c)	(((3	(((3HXx 001B131BD 	E
		(H11"''(2C24''(2CE 	Fr@   c                 B    | j                  t        j                         y ra   )r   rG   r}   r~   s    r   test_samestat_on_symlinkz$GenericTest.test_samestat_on_symlink+  r   r@   c                     	 | j                  t        j                         y # t        $ r}| j	                  d|z         Y d }~y d }~ww xY wr   )r   rG   r   r   r   r   s     r   test_samestat_on_linkz!GenericTest.test_samestat_on_link/  r   r   c                    t         j                  }| j                  t         j                  |       t	        |       t        |dd      5 }|j                         }t        |dd      5 }|j                         }| j                  | j                  j                  ||             d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)NrM   r   )
r   rD   rE   rF   r   r
   filenor6   r!   sameopenfile)r%   r   fp1fd1fp2fd2s         r   test_sameopenfilezGenericTest.test_sameopenfile6  s    ##	(((3H(D!$**,Cha(Cjjl < <S# FG ) %$(( %$s$   	C '<B4#C 4B=	9C  C	N)r$   
__module____qualname__r   r   r'   r?   rI   rQ   r^   unittest
skipUnlesshasattrrG   skipIfr   rf   rk   rn   ru   r{   r   skip_unless_symlinkr   r   r   r   r   r   r    r@   r   r   r      s$   BJIA>F	@
$"HH XV,.BCX__]$FG4 H D4&2&2?G ""5 #5 XV,.@A/ B/? F  ""5 #5 XV,.@A/ B/	Hr@   r   c                       e Zd ZeZd Zy)TestGenericTestc                    t         j                  D ]  }|dk(  r
t        | j                  |      }| j	                  |      5  |dv r! |d        |d        |d        |d       n| j                  t        t        f      5   |d       d d d        | j                  t        t        f      5   |d       d d d        | j                  t        d      5   |d       d d d        | j                  t        d      5   |d       d d d        d d d         y # 1 sw Y   xY w# 1 sw Y   oxY w# 1 sw Y   TxY w# 1 sw Y   9xY w# 1 sw Y   DxY w)	Nr   )r&   )r   r   r   u   /tmpabcdss
   /tmpabcdsz
/tmp abcdss
   /tmp abcdszembedded null)r   r   r    r!   subTestr   OSErrorUnicodeEncodeErrorUnicodeDecodeErrorassertRaisesRegex
ValueError)r%   r&   rx   s      r   test_invalid_pathsz"TestGenericTest.test_invalid_pathsH  s   11D~%4??D1D4(88*+)*))***G5G+HI./ J**G5G+HI-. J//
OL_- M//
OL-. M )( 2 JIIILLLL )(sm   AE	D#E0	D'9E	D3 E>	D?ED$ E'D0,E3D<8E?EEE	N)r$   r   r   rZ   r!   r   r   r@   r   r   r   B  s     J/r@   r   c                       e Zd Zej                  g dz   Zd Zd Zd Z ej                  e
j                  d      d        Zd Zd Zd	 Zd
 Zd Zd Zd Zd Zd Zy)
CommonTest)curdirpardirextsepseppathsepdefpathaltsepdevnullnormcase
splitdrive
expandvarsnormpathabspathjoinsplitsplitextisabsbasenamedirnamer[   islinkismount
expanduserr   realpathc                 >   | j                   j                  }dD ]"  } ||      }| j                  | ||             $ | j                   |d      d       | j                   |d      d       d dddg t        d      ddhfD ]  }| j	                  t
        ||        y )N)z	FoO/./BaRs	   FoO/./BaRr)   r@   Tr   g      @o)r!   r   r5   	bytearrayr   r   )r%   r   r=   rW   s       r   test_normcasezCommonTest.test_normcasel  s    ??++,AAQ, - 	"r*#, 4CYs^c#YGDi48 Hr@   c                 P   | j                   j                  }| j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d	      d
       | j                   |d      d       y )N/foo/bar)r)   r   foo:bar)r)   r   :foo:bar)r)   r      /foo/bar)r@   r      foo:bar)r@   r      :foo:bar)r@   r   )r!   r   r5   )r%   r   s     r   test_splitdrivezCommonTest.test_splitdrivez  s    __//
J/1ABI.@J/1ABK02DEJ/1BCK02DEr@   c                    | j                   j                  }t        j                         5 }|j	                          d|d<   d|d<   d|d<   | j                   |d      d       | j                   |d      d       | j                   |d	      d
       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d
       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d      d       | j                   |d       d!       | j                   |d"      d       | j                   |d#      d#       d d d        y # 1 sw Y   y xY w)$Nbarfoobaz1z{foobaz2z{foo}z$foo barzbar barz	${foo}barbarbarz	$[foo]barz$bar barz$?barz$foo}barzbar}barz${fooz${{foo}}zbaz1}z$foo$fooz$bar$barrK   s   $foo bars   bar bars	   ${foo}bars   barbars	   $[foo]bars   $bar bars   $?bars   $foo}bars   bar}bars   ${foos   ${{foo}}s   baz1}s   $foo$foos   $bar$bar)r!   r   r   EnvironmentVarGuardclearr5   )r%   r   envs      r   test_expandvarszCommonTest.test_expandvars  s   __//
**,IIKCJ CK!CLZ.6Z
3Y?Z4h?Z4kBZ
3Z@Z0':Z
3Y?Z0':Z
3W=Z
3X>Z
3Z@Z/8Z4jAZ5yAZ5|DZ4kBZ18<Z4jAZ18<Z4h?Z4i@Z4kB7 -,,s   H0I$$I-zneed os_helper.FS_NONASCIIc                 n     j                   j                   fd}t        j                         5 }|j	                          t        j
                  }||d<   d|z   ||<    |||        |dd|z          |dd|z          |d|z  d	|z          |d
|z  d
|z          |dd|z          |t        j                  |      t        j                  |              |dt        j                  d|z                |dt        j                  d|z                |t        j                  d|z        t        j                  d	|z                |t        j                  d
|z        t        j                  d
|z                |dt        j                  d|z               d d d        y # 1 sw Y   y xY w)Nc                 6    j                   |       |       y ra   )r5   )valueexpectedr   r%   s     r   checkz2CommonTest.test_expandvars_nonascii.<locals>.check  s    Z.9r@   spamhamz	$spam barz%s barz
${spam}barz%sbarz${%s}barzham%sbarz
$bar%s barz	$spam}barz%s}bars	   $spam bars
   ${spam}bars	   $spam}bar)r!   r   r   r   r   FS_NONASCIIrG   rX   )r%   r   r   nonasciir   s   `   @r   test_expandvars_nonasciiz#CommonTest.test_expandvars_nonascii  sq   __//
	:**,IIK ,,H"CK!H,CM(H%+x(23,( 23*x'h)>?,)<(+BC+x(23"++h'X)>?,Hx,? @A-Wx-?!@A"++j834++j8346"++lX56++lX568,Hx,? @A' -,,s   E/F++F4c                 b   | j                  d| j                  j                  d             t        j                         5  t        j
                  dt               | j                  d| j                  j                  d             d d d        t        j                  dk(  rdnd}t        j                         5  t        j
                  dt               dd|ddfD ]1  }| j                  | j                  j                  |      t               3 	 d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)	Nr   ignorerK   win32r@   s   fs   /foos   C:\)assertInr!   r   warningscatch_warningssimplefilterDeprecationWarningsysplatformassertIsInstancebytes)r%   undecodable_pathrW   s      r   test_abspathzCommonTest.test_abspath  s    eT__44U;<$$&!!(,>?MM&$//"9"9&"AB '
 #&,,'"93| $$&!!(,>?f&6I%%doo&=&=d&CUK J '& '& '&s    AD9AD%D"%D.c                 6   | j                  d| j                  j                  d             t        j                         5  t        j
                  dt               | j                  d| j                  j                  d             d d d        y # 1 sw Y   y xY w)Nr   r   rK   )r   r!   r   r   r   r   r   r~   s    r   test_realpathzCommonTest.test_realpath  se    eT__55e<=$$&!!(,>?MM&$//":":6"BC '&&s    ABBc                 p    dD ]1  }| j                  | j                  j                  |      t               3 y )N)r)   ./\z///foo/.//bar//)r   r!   r   strr%   rW   s     r   test_normpath_issue5827z"CommonTest.test_normpath_issue5827  s+    ;D!!$//":":4"@#F <r@   c                 h    dD ]-  }| j                  | j                  j                  |      |       / y )N)rU   zfoo barz  z foozfoo )r5   r!   r   r   s     r   test_normpath_issue106242z$CommonTest.test_normpath_issue106242  s,    LDT__55d;TB Mr@   c                 l   | j                   j                  }dD ]  }| j                   ||      t                 d}	 t	        j
                  |       t        j                  |      5  dD ]  }| j                   ||      t                 	 d d d        y # 1 sw Y   y xY w# t        t        f$ r Y y w xY w)N)r)   fuuu   fùùz/fuuzU:\u   çwð)
r!   r   r   r   rG   rX   r   temp_cwdAttributeErrorr   )r%   r   rW   unicwds       r   test_abspath_issue3426z!CommonTest.test_abspath_issue3426  s     //))<D!!'$-5 = 	>KK
 ##F+DD))'$-= E ,++	  23 		s   B! '$BB!B32B3c                    t         j                  r#t        j                  dvrt         j                  }n2t         j                  rt         j                  }n| j                  d       t        j                         5  t        j                  dt               t        j                        5  | j                          d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   y xY w)N)r   darwin
emscriptenwasizneed os_helper.TESTFN_NONASCIIr   )r   TESTFN_UNDECODABLEr   r   TESTFN_NONASCIIr   r   r   r   r   r  r   )r%   names     r   test_nonascii_abspathz CommonTest.test_nonascii_abspath  s    ((
 LL II//D&&,,DMM:;$$&!!(,>?##D)!!# * '&)) '&s$   :0C*C;CC	CC!c                 t   t        j                  dt        fd      5  d}| j                  t        |      5  | j
                  j                  dd       d d d        | j                  t        |      5  | j
                  j                  dd       d d d        | j                  t        d      5  | j
                  j                  dd       d d d        | j                  t        d      5  | j
                  j                  dd       d d d        | j                  t        d      5  | j
                  j                  d       d d d        | j                  t        d	      5  | j
                  j                  g        d d d        | j                  t        d
      5  | j
                  j                  t        d      t        d             d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   WxY w# 1 sw Y   )xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   ]xY w# 1 sw Y   y xY w)Nr)   Tquiet.Can't mix strings and bytes in path components   bytesr   int*   listr   rK   rL   )r   check_warningsBytesWarningr   r   r!   r   r   r%   errmsgs     r   test_join_errorszCommonTest.test_join_errors   s   ++R,>dKEF''	6:$$Xu5 ;''	6:$$UH5 ; ''	59$$R/ :''	59$$UB/ :''	59$$R( :''	6:$$R( ;''	;?$$Yv%6	&8IJ @ LK:::: :99999::?? LKs   H.GH.2G$H.-G1
H.(G>H.#H
?H.H9H./H"H.G!	H.$G.	)H.1G;	6H.>H	H.
H	H.H	H."H+	'H..H7c                 d   t        j                  dt        t        ffd      5  d}| j	                  t
        |      5  | j                  j                  dd       d d d        | j	                  t
        |      5  | j                  j                  dd       d d d        | j	                  t
        d      5  | j                  j                  dd       d d d        | j	                  t
        d      5  | j                  j                  dd       d d d        | j	                  t
        d	      5  | j                  j                  t        d
      t        d             d d d        d d d        y # 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   xY w# 1 sw Y   CxY w# 1 sw Y   y xY w)Nr)   Tr  r  r  r   r  r  r   rK   rL   )	r   r  r  r   r   r   r!   relpathr   r  s     r   test_relpath_errorszCommonTest.test_relpath_errors  s<   ++l$678FEF''	6:''%8 ;''	6:''x8 ;''	59''E2 :''	59''r2 :''	;?''	&(99V;LM @F F ;:::9999??F Fs   F&E)F&8E6F&3FF&.FF&)/FF&)E3	.F&6E?	;F&F	F&F	F&F#	F&&F/c                 L    t        ddd| j                  j                  z          y )Nz-Sz-czimport )r   r!   r$   r~   s    r   test_importzCommonTest.test_import$  s    tY1I1I%IJr@   N)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   a  s    #55 9 9	FC> X..0LMB NB2LDG
C>$$$K(N Kr@   r   c                   H    e Zd Zd Zd Zd Zd Zd Zd Zd Z	d Z
d	 Zd
 Zy)PathLikeTestsc                     t         j                  | _        t        t         j                        | _        | j                  t         j                  | j                         t        | j                  d       y )Ns   test_genericpath.PathLikeTests)r   rD   	file_namer   	file_pathrE   rF   r   r~   s    r   setUpzPathLikeTests.setUp*  sH    "))!)"2"23	(($..9DNN$EFr@   c                 h    | j                   || j                         || j                               y ra   )r5   r(  r'  )r%   rx   s     r   assertPathEqualzPathLikeTests.assertPathEqual0  s$    dnn-tDNN/CDr@   c                 V    | j                  t        j                  j                         y ra   )r+  rG   rW   r   r~   s    r   test_path_existszPathLikeTests.test_path_exists3      RWW^^,r@   c                 V    | j                  t        j                  j                         y ra   )r+  rG   rW   r   r~   s    r   test_path_isfilezPathLikeTests.test_path_isfile6  r.  r@   c                 V    | j                  t        j                  j                         y ra   )r+  rG   rW   r   r~   s    r   test_path_isdirzPathLikeTests.test_path_isdir9  s    RWW]]+r@   c                     | j                  t        j                  j                  | j                  | j
                  g      | j
                         y ra   )r5   rG   rW   r   r(  r'  r~   s    r   test_path_commonprefixz$PathLikeTests.test_path_commonprefix<  s5    --t~~t~~.NO	)r@   c                 V    | j                  t        j                  j                         y ra   )r+  rG   rW   r   r~   s    r   test_path_getsizezPathLikeTests.test_path_getsize@  s    RWW__-r@   c                 V    | j                  t        j                  j                         y ra   )r+  rG   rW   r   r~   s    r   test_path_getmtimez PathLikeTests.test_path_getmtimeC      RWW--.r@   c                 V    | j                  t        j                  j                         y ra   )r+  rG   rW   r   r~   s    r   test_path_getctimez PathLikeTests.test_path_getctimeF  r9  r@   c                     | j                  t        j                  j                  | j                  | j
                               y ra   )r6   rG   rW   rr   r(  r'  r~   s    r   test_path_samefilez PathLikeTests.test_path_samefileI  s'    ((HIr@   N)r$   r   r   r)  r+  r-  r0  r2  r4  r6  r8  r;  r=  r   r@   r   r%  r%  (  s7    GE--,).//Jr@   r%  __main__)rK   )rZ   rG   r   r   r   test.supportr   r   r   test.support.script_helperr   test.support.os_helperr   r   r   TestCaser   r   r%  r$   mainr   r@   r   <module>rD     s     	 
   & " ( 7 +
iH iHX	/k8#4#4 />DK DKN"JH%% "JJ zHMMO r@   