
    vKg                    @   % S SK Jr  S SKrS SKrS SKJrJrJr  S SKrS SK	r	S SK
Jr  \(       a  S SKJrJr  \R                  S1S j5       r      S2S	 jr\R$                  R'                  \R(                  S
:H  SS9S3S j5       r\R$                  R'                  \R(                  S
:g  SS9S3S j5       rS4S jrS3S jr\\\	R2                     \\R2                     4   r\\\\   4   r\	R2                  \R2                  4\R2                  \	R2                  4\	R2                  \	R2                  4/rS\S'   \R$                  R?                  S\5      S5S j5       r \	R2                  \R2                  4\	R2                  \	R2                  4\	R2                  \4\\	R2                  4/r!S\S'   \R$                  R?                  S\!5      S6S j5       r"\R$                  R?                  S\	R2                  \R2                  4\	R2                  \	R2                  4/5      \R$                  R?                  S/ SQ5              S7S j5       5       r#S4S jr$S4S jr%\R$                  R?                  SSS/5      S8S j5       r&S4S  jr'\R$                  R?                  SS!S"/5      S8S# j5       r(S9S$ jr)S4S% jr*S4S& jr+S3S' jr,\R$                  R?                  S(\	R2                  RZ                  \	R2                  R\                  /5            S:S) j5       r/S3S* jr0S4S+ jr1S4S, jr2S4S- jr3S3S. jr4\R$                  R?                  S/\	Rj                  Rl                  \	Rj                  Rn                  \	Rj                  Rp                  \	Rj                  Rr                  /5          S;S0 j5       r:g)<    )annotationsN)TYPE_CHECKINGTypeUnion)AsyncIOWrapper)	AwaitableCallablec                4    [         R                  " U S-  5      $ )Ntest)trioPath)tmp_paths    U/var/www/highfloat_scraper/venv/lib/python3.13/site-packages/trio/_tests/test_path.pypathr      s    99X&''    r   method_namec                    [         R                  " U 5      n[        R                  " U 5      n[        X!5      [        X15      4$ N)pathlibr   r   getattr)r   r   	sync_path
async_paths       r   method_pairr      s4     T"I4J9*GJ,LLLr   ntzOS is not posix)reasonc                 t   #    [        [        R                  " 5       [        R                  5      (       d   eg 7fr   )
isinstancer   r   	PosixPath r   r   test_instantiate_posixr       s"     diik4>>2222   68zOS is not Windowsc                 t   #    [        [        R                  " 5       [        R                  5      (       d   eg 7fr   )r   r   r   WindowsPathr   r   r   test_instantiate_windowsr$   #   s$     diik4#3#34444r!   c                  #    U R                  S5      I S h  vN  IS h  vN n[        U[        5      (       d   eS S S 5      IS h  vN   WR                  (       d   eg  NH NA N! , IS h  vN  (       d  f       N1= f7fNw)openr   r   closedr   fs     r   "test_open_is_async_context_managerr,   (   sQ     YYs^###q!^,,,, $# 88O8 $###sS   B A B A"B A&B A$B "B $B &A=,A/-A=9B c                 |   #    [         R                  " S5      n [        U 5      S:X  d   e[        U 5      S:X  d   eg 7f)Nr   s   test)r   r   strbytesr   s    r   
test_magicr1   /   s7     99VDt9;'!!!s   :<z+list[tuple[EitherPathType, EitherPathType]]	cls_pairs)cls_acls_bc                   #    U " S5      U" S5      p2X#:X  d   eX#:w  a   eU " S5      U" S5      p2X#:  d   eX2:  d   eUS :X  a   eUS :X  a   eg 7f)N abr   )r3   r4   r7   r8   s       r   test_cmp_magicr9   ?   sd     9eBiq6M6v::uSzq5L55L5 Dy=Dy=ys   AAz)list[tuple[PathOrStrType, PathOrStrType]]cls_pairs_strc                   #    U " S5      U" S5      p2X#-  n[        U[        R                  5      (       d   e[        U5      [        R
                  R                  SS5      :X  d   eg 7f)Nr7   r8   )r   r   r   r.   osr   join)r3   r4   r7   r8   results        r   test_div_magicr?   Z   sS     :uSzqUFfdii((((v;"'',,sC0000s   A%A')foozfoo/bar/bazz./fooc                ^   #    U " U5      U" U5      pC[        U5      [        U5      :X  d   eg 7fr   )hash)r3   r4   r   r7   r8   s        r   test_hash_magicrC   d   s,      ;dq7d1gs   +-c                R   #    S[        U 5      ;   d   eU R                  S:X  d   eg 7f)Nnamer   )dirrE   r0   s    r   test_forwarded_propertiesrG   r   s+      SY99s   %'c                  #    U R                   R                  S:X  d   eU R                   R                  S:X  d   eU R                   R                  c   eU R                   R                  U R                   R                  ;   d   eg 7f)NresolvezPath.resolve)rI   __name____qualname____doc__r0   s    r   test_async_method_signaturerM   y   so      <<  I---<<$$666<<+++<<$$(<(<<<<s   BBis_diris_filec                f   #    [        SU 5      u  pU" 5       nU" 5       I S h  vN nX4:X  d   eg  N7fN.)r   r   methodasync_methodr>   async_results        r   test_compare_async_stat_methodsrW      s6     &sK8FXF%'L!!! (s    1/1c                   #    [         R                  " [        5         [        U S5        S S S 5        g ! , (       d  f       g = f7f)Ninvalid_fake_attr)pytestraisesAttributeErrorr   r0   s    r   test_invalid_name_not_wrappedr]      s'     	~	&)* 
'	&	&s   A3	A
AAabsoluterI   c                   #    [        SU 5      u  pU" 5       nU" 5       I S h  vN n[        U[        R                  5      (       d   e[	        U5      [	        U5      :X  d   eg  N@7frQ   )r   r   r   r   r.   rS   s        r   test_async_methods_rewrapr`      sX     &sK8FXF%'LlDII....v;#l++++ (s    A%A#AA%c                   #    U R                  S5      nU R                  S5      n[        U[        R                  5      (       d   eX!S-  :X  d   e[        U[        R                  5      (       d   eX1S-  :X  d   eg 7f)Nr@   z.pyztest.py)	with_namewith_suffixr   r   r   )r   r   rb   rc   s       r   test_forward_methods_rewraprd      ss     u%I""5)Ki++++5((((k499----Y....s   A:A<c                b   #    [        U R                  [        R                  5      (       d   eg 7fr   )r   parentr   r   r0   s    r   test_forward_properties_rewraprg      s      dkk499----s   -/c                   #    U R                   R                  5       I S h  vN n U R                  5       R                  S5      (       d   eg  N+7f)Nzfile:///)rf   rI   as_uri
startswithr0   s    r   #test_forward_methods_without_rewraprk      s<     $$&&D;;=##J//// 's   AA,Ac                 Z   #    [         R                  " S5      n [        U 5      S:X  d   eg 7f)NrR   ztrio.Path('.'))r   r   reprr0   s    r   	test_reprrn      s%     99S>D:))))s   )+methc                h   #    U R                  5       I S h  vN nU" X5      nUc  U nX#:X  d   eg  N7fr   )r^   )r   ro   wrappedr>   s       r   test_path_wraps_pathrr      s:     
 MMO#G$ F~ $s   202c                    #    [         R                  " [        5         [        R                  " S5        S S S 5        g ! , (       d  f       g = f7f)N   )rZ   r[   	TypeErrorr   r   r   r   r   test_path_nonpathrv      s'     	y	!		! 
"	!	!s   A=	A
AAc                  #    [         R                  " U S5      I S h  vN  IS h  vN nUR                  [        R                  " U 5      :X  d   eS S S 5      IS h  vN   g  ND N= N	! , IS h  vN  (       d  f       g = f7fr&   )r   	open_filerE   r<   fspathr*   s     r   test_open_file_can_open_pathrz      sL     ^^D#....!vv4((( /.....sT   BA"BA$B'A(BA&B$B&B(A?.A1/A?;Bc                >  #    U R                  5       I S h  vN   U S-  R                  5       I S h  vN   U S-  S-  R                  S5      I S h  vN   U S-  R                  S5      I S h  vN   U S-  R                  S5      I S h  vN   S1SS1S.R                  5        Hr  u  p[        5       nU R	                  U5      I S h  vN  H?  n[        U[        R                  5      (       d   eUR                  UR                  5        MA     X2:X  a  Mr   e   [        5       nU R                  S5      I S h  vN  H?  n[        U[        R                  5      (       d   eUR                  UR                  5        MA     USS1:X  d   eg  GNt GN\ GN@ GN' GN N Nc7f)Nr@   z_bar.txtr   bar.txtzbar.dat)*.txtz**/*.txtr}   )mkdirwrite_bytesitemssetglobr   r   r   addrE   rglob)r   _pattern_resultsentriesentrys        r   test_globmethodsr      su    
**,%<


   %<*$
1
1#
666)
(
(
---)
(
(
--- + eg %99X...EeTYY////KK

# / """ eGzz'***%++++EJJ + z9----1  6-- / +s   FF
FFFFF,F-FF	=FFA
F"F7F8AFFFFFFFc                  #    U R                  5       I S h  vN   U S-  R                  5       I S h  vN   U S-  R                  S5      I S h  vN   [        5       nU R                  5       I S h  vN  H?  n[	        U[
        R                  5      (       d   eUR                  UR                  5        MA     USS1:X  d   eg  N N Nx NX7f)Nr@   r|   r   )	r~   r   r   iterdirr   r   r   r   rE   )r   r   r   s      r   test_iterdirr      s     
**,%<


   )
(
(
---eG||~%%%++++EJJ & y%((((  - &sD   C
CC
CC
C!C
/C0AC
C
C
C
c                 ,  #    [        [        R                  R                  5       I S h  vN [        R                  5      (       d   e[	        [        R                  R                  5       I S h  vN 5      [
        R                  R                  S5      :X  d   e[	        [        R                  R                  5       I S h  vN 5      [
        R                  " 5       :X  d   e[        R                  R                  R                  (       d   eg  N N NQ7f)N~)r   r   r   homer.   r<   r   
expandusercwdgetcwdrL   r   r   r   test_classmethodsr      s     DIINN,,dii8888 TYY^^%%&"''*<*<S*AAAATYY]]_$%444 99>>!!!! - &$s6   'DDAD.D/AD DADDDwrapperc                6    U SS j5       nUR                   b   eg )Nc                     g r   r   r   r   r   func_without_docstring@test_wrapping_without_docstrings.<locals>.func_without_docstring  s    *-r   returnNone)rL   )r   r   s     r    test_wrapping_without_docstringsr     s$     - -!))111r   )r   pathlib.Pathr   	trio.Path)r   r.   r   r.   r   z<tuple[Callable[[], object], Callable[[], Awaitable[object]]]r   )r   r   r   r   )r3   EitherPathTyper4   r   r   r   )r3   PathOrStrTyper4   r   r   r   )r3   r   r4   r   r   r.   r   r   )r   r.   r   r   )r   r   r   r   r   r   )r   r   ro   z(Callable[[trio.Path, trio.Path], object]r   r   )r   z2Callable[[Callable[[], None]], Callable[[], None]]r   r   );
__future__r   r<   r   typingr   r   r   rZ   r   trio._file_ior   collections.abcr   r	   fixturer   r   markskipifrE   r    r$   r,   r1   r   r   r.   r   r2   __annotations__parametrizer9   r:   r?   rC   rG   rM   rW   r]   r`   rd   rg   rk   rn   __init__joinpathrr   rv   rz   r   r   r   _path_wraps_async_wrap_method_wrap_method_path_wrap_method_path_iterabler   r   r   r   <module>r      s   " 	  - -   (3 ( (M
MM BM BGGtO,=>3 ?3 BGGtO,?@5 A5" tDIIW\\(::;nd3i/0	YY\\499	YY		:	6  +Y7 8& 
YY	YY			YY$))	<8  +];1 <1 
iiDII 67 !@A  
	 B	
= 9(=>" ?"+
 Y(?@, A,/.0* $))"4"4dii6H6H!IJ	
	
2	 
	 K	
)
.:)" 





$$

--	2?2	22r   