
     fv                       U d dl mZ d dlZd dlZd dlmZmZmZ d dlZd dl	Z	d dl
mZ erd dlmZmZ ej        d>d
            Zd?dZej                            ej        dk    d          d@d            Zej                            ej        dk    d          d@d            ZdAdZd@dZeee	j                 eej                 f         Zeeee         f         Ze	j        ej        fej        e	j        fe	j        e	j        fgZded<   ej                            de          dBd            Z e	j        ej        fe	j        e	j        fe	j        efee	j        fgZ!d ed!<   ej                            de!          dCd#            Z"ej                            de	j        ej        fe	j        e	j        fg          ej                            dg d$          dDd%                        Z#dAd&Z$dAd'Z%ej                            dd(d)g          dEd*            Z&dAd+Z'ej                            dd,d-g          dEd.            Z(dFd/Z)dAd0Z*dAd1Z+d@d2Z,ej                            d3e	j        j-        e	j        j.        g          dGd5            Z/d@d6Z0dAd7Z1dAd8Z2dAd9Z3d@d:Z4ej                            d;e	j5        j6        e	j5        j7        e	j5        j8        e	j5        j9        g          dHd=            Z:dS )I    )annotationsN)TYPE_CHECKINGTypeUnion)AsyncIOWrapper)	AwaitableCallabletmp_pathpathlib.Pathreturn	trio.Pathc                0    t          j        | dz            S )Ntest)trioPath)r
   s    X/var/www/api.educacionweb.es/myenv/lib/python3.11/site-packages/trio/_tests/test_path.pypathr      s    9X&'''    r   strmethod_name<tuple[Callable[[], object], Callable[[], Awaitable[object]]]c                    t          j        |           }t          j        |           }t          ||          t          ||          fS N)pathlibr   r   getattr)r   r   	sync_path
async_paths       r   method_pairr      s?     T""I4J9k**GJ,L,LLLr   ntzOS is not posix)reasonNonec                 d   K   t          t          j                    t          j                  sJ d S r   )
isinstancer   r   	PosixPath r   r   test_instantiate_posixr&      s*      dikk4>2222222r   zOS is not Windowsc                 d   K   t          t          j                    t          j                  sJ d S r   )r#   r   r   WindowsPathr%   r   r   test_instantiate_windowsr)   #   s+      dikk4#34444444r   c                   K   |                      d           d {V 4 d {V }t          |t                    sJ 	 d d d           d {V  n# 1 d {V swxY w Y   |j        sJ d S Nw)openr#   r   closedr   fs     r   "test_open_is_async_context_managerr1   (   s      YYs^^###### - - - - - - -q!^,,,,,,- - - - - - - - - - - - - - - - - - - - - - - - - - - 8OOOOOs   A
AAc                    K   t          j        d          } t          |           dk    sJ t          |           dk    sJ d S )Nr   s   test)r   r   r   bytesr   s    r   
test_magicr5   /   sI      9VDt99;;'!!!!!!r   z+list[tuple[EitherPathType, EitherPathType]]	cls_pairs)cls_acls_br7   EitherPathTyper8   c                   K    | d           |d          }}||k    sJ ||k    rJ  | d           |d          }}||k     sJ ||k    sJ |d k    rJ |d k    rJ d S )N abr%   )r7   r8   r<   r=   s       r   test_cmp_magicr>   ?   s      599eeBiiqA6666Avvvv5::uuSzzqAq5555q5555 DyyyyDyyyyyyr   z)list[tuple[PathOrStrType, PathOrStrType]]cls_pairs_strPathOrStrTypec                   K    | d           |d          }}||z  }t          |t          j                  sJ t          |          t          j                            dd          k    sJ d S )Nr<   r=   )r#   r   r   r   osr   join)r7   r8   r<   r=   results        r   test_div_magicrE   Z   sm      5::uuSzzqAUFfdi(((((v;;"',,sC00000000r   )foozfoo/bar/bazz./fooc                z   K    | |           ||          }}t          |          t          |          k    sJ d S r   )hash)r7   r8   r   r<   r=   s        r   test_hash_magicrI   d   sD       5;;dqA77d1ggr   c                J   K   dt          |           v sJ | j        dk    sJ d S )Nnamer   )dirrK   r4   s    r   test_forwarded_propertiesrM   o   s8       SYY9r   c                   K   | j         j        dk    sJ | j         j        dk    sJ | j         j        J | j         j        | j         j        v sJ d S )NresolvezPath.resolve)rO   __name____qualname____doc__r4   s    r   test_async_method_signaturerS   v   sf       < I----<$6666<+++<$(<<<<<<<r   is_diris_filec                t   K   t          d|           \  }} |            } |             d {V }||k    sJ d S N.)r   r   methodasync_methodrD   async_results        r   test_compare_async_stat_methodsr]      sY      &sK88FLVXXF%''''''L\!!!!!!r   c                   K   t          j        t                    5  t          | d           d d d            d S # 1 swxY w Y   d S )Ninvalid_fake_attr)pytestraisesAttributeErrorr   r4   s    r   test_invalid_name_not_wrappedrc      s      	~	&	& + +)***+ + + + + + + + + + + + + + + + + +s   :>>absoluterO   c                   K   t          d|           \  }} |            } |             d {V }t          |t          j                  sJ t	          |          t	          |          k    sJ d S rW   )r   r#   r   r   r   rY   s        r   test_async_methods_rewraprf      s      &sK88FLVXXF%''''''LlDI.....v;;#l++++++++r   c                   K   |                      d          }|                     d          }t          |t          j                  sJ ||dz  k    sJ t          |t          j                  sJ ||dz  k    sJ d S )NrF   z.pyztest.py)	with_namewith_suffixr#   r   r   )r   r
   rh   ri   s       r   test_forward_methods_rewraprj      s      u%%I""5))Ki+++++5(((((k49-----(Y.......r   c                L   K   t          | j        t          j                  sJ d S r   )r#   parentr   r   r4   s    r   test_forward_properties_rewraprm      s&      dk49-------r   c                   K   | j                                          d {V } |                                                     d          sJ d S )Nzfile:///)rl   rO   as_uri
startswithr4   s    r   #test_forward_methods_without_rewraprq      sS      $$&&&&&&&&D;;==##J///////r   c                 \   K   t          j        d          } t          |           dk    sJ d S )NrX   ztrio.Path('.'))r   r   reprr4   s    r   	test_reprrt      s1      9S>>D::)))))))r   meth(Callable[[trio.Path, trio.Path], object]c                n   K   |                                   d {V } || |          }|| }||k    sJ d S r   )rd   )r   ru   wrappedrD   s       r   test_path_wraps_pathry      sY      
 MMOO######GT$  F~fr   c                    K   t          j        t                    5  t          j        d           d d d            d S # 1 swxY w Y   d S )N   )r`   ra   	TypeErrorr   r   r%   r   r   test_path_nonpathr}      s      	y	!	!  	!                 s   >AAc                   K   t          j        | d           d {V 4 d {V }|j        t          j        |           k    sJ 	 d d d           d {V  d S # 1 d {V swxY w Y   d S r+   )r   	open_filerK   rB   fspathr/   s     r   test_open_file_can_open_pathr      s     ^D#........ ) ) ) ) ) ) )!v4((((() ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )s    A
A"%A"c                  K   |                                   d {V  | dz                                    d {V  | dz  dz                      d           d {V  | dz                      d           d {V  | dz                      d           d {V  dhddhd                                D ]o\  }}t                      }|                     |           d {V D ]8}t          |t          j                  sJ |                    |j	                   9||k    sJ pt                      }| 
                    d           d {V D ]8}t          |t          j                  sJ |                    |j	                   9|ddhk    sJ d S )NrF   z_bar.txtr   bar.txtzbar.dat)*.txtz**/*.txtr   )mkdirwrite_bytesitemssetglobr#   r   r   addrK   rglob)r   _pattern_resultsentriesentrys        r   test_globmethodsr      s     
**,,%<


 
        %<*$
1
1#
6
66666666)
(
(
-
--------)
(
(
-
-------- +  egg	# 	#( %%99X........ 	$ 	$EeTY/////KK
####(""""" eeGzz'********    %+++++EJz9-------r   c                  K   |                                   d {V  | dz                                    d {V  | dz                      d           d {V  t                      }|                                  d {V D ]8}t	          |t
          j                  sJ |                    |j                   9|ddhk    sJ d S )NrF   r   r   )	r   r   r   iterdirr#   r   r   r   rK   )r   r   r   s      r   test_iterdirr      s      
**,,%<


 
        )
(
(
-
--------eeG||~~%%%%%%    %+++++EJy%(((((((r   c                   K   t          t          j                                         d {V t          j                  sJ t	          t          j                                         d {V           t
          j                            d          k    sJ t	          t          j                                         d {V           t          j	                    k    sJ t          j        j        j
        sJ d S )N~)r#   r   r   homer   rB   r   
expandusercwdgetcwdrR   r%   r   r   test_classmethodsr      s      DINN,,,,,,,,di88888 TY^^%%%%%%%%&&"'*<*<S*A*AAAAATY]]__$$$$$$%%4444 9>!!!!!!r   wrapper2Callable[[Callable[[], None]], Callable[[], None]]c                0    | dd            }|j         J d S )Nr   r!   c                     d S r   r%   r%   r   r   func_without_docstringz@test_wrapping_without_docstrings.<locals>.func_without_docstring  s    *-#r   r   r!   )rR   )r   r   s     r    test_wrapping_without_docstringsr     s/     --- W-!)11111r   )r
   r   r   r   )r   r   r   r   r   r   r   )r   r   r   r!   )r7   r9   r8   r9   r   r!   )r7   r@   r8   r@   r   r!   )r7   r9   r8   r9   r   r   r   r!   )r   r   r   r!   )r   r   r
   r   r   r!   )r   r   ru   rv   r   r!   )r   r   r   r!   );
__future__r   rB   r   typingr   r   r   r`   r   trio._file_ior   collections.abcr   r	   fixturer   r   markskipifrK   r&   r)   r1   r5   r   r9   r   r@   r6   __annotations__parametrizer>   r?   rE   rI   rM   rS   r]   rc   rf   rj   rm   rq   rt   __init__joinpathry   r}   r   r   r   r   _path_wraps_async_wrap_method_wrap_method_path_wrap_method_path_iterabler   r%   r   r   <module>r      s   " " " " " " " 				  - - - - - - - - - -   ( ( ( ( ( ( 433333333 ( ( ( (M M M M BGtO,=>>3 3 3 ?>3 BGtO,?@@5 5 5 A@5   " " " " tDIW\(::;nd3i/0	Y\49	Y	:	     +Y77   87& 
Y	Y		Y$)	<     +];;1 1 1 <;1 $)W\2TY	4JK  !@!@!@AA   BA    = = = = 9(=>>" " " ?>"+ + + +
 Y(?@@, , , A@,/ / / /. . . .0 0 0 0* * * * $)"4di6H!IJJ	 	 	 KJ	   
) ) ) )
. . . .:) ) ) )" " " " 


$
-	 2 2 2 2 2 2r   