Ë
    U¼SfE  ã                   ó‚   — d Z ddlmZ  G d„ de«      Z G d„ de«      Zd„ Z e«       Z[ G d„ d	e«      Z G d
„ de«      Z	y)zShared testing utilities.é    )Úabsolute_importc                   ó"   — e Zd ZdZd„ Zd„ Zd„ Zy)Ú_MonkeyzBContext-manager for replacing module names in the scope of a test.c                 óÀ   — || _         |st        d«      ‚|D �ci c]  }|t        ||«      “Œ c}| _        |j	                  «       D ]  \  }}t        |||«       Œ y c c}w )Nz-_Monkey was used with nothing to monkey-patch)ÚmoduleÚ
ValueErrorÚgetattrÚ
to_restoreÚitemsÚsetattr)Úselfr   ÚkwÚkeyÚvalues        ú]C:\Users\user\Documents\project_loop\venv\Lib\site-packages\google/cloud/_testing/__init__.pyÚ__init__z_Monkey.__init__   sa   € ØˆŒÙÜÐLÓMÐMØ@BÖC¸˜3¤¨°Ó 4Ñ4ÒCˆŒØŸ(™(›*ò 	(‰JˆC�Ü�F˜C Õ'ñ	(ùò Ds   ™Ac                 ó   — | S ©N© ©r   s    r   Ú	__enter__z_Monkey.__enter__   ó   € Øˆó    c                 óv   — | j                   j                  «       D ]  \  }}t        | j                  ||«       Œ y r   )r
   r   r   r   )r   Úexc_typeÚexc_valÚexc_tbr   r   s         r   Ú__exit__z_Monkey.__exit__"   s2   € ØŸ/™/×/Ñ/Ó1ò 	-‰JˆC�Ü�D—K‘K  eÕ,ñ	-r   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r   r      s   „ ÙLò(òó-r   r   c                   ó    — e Zd Zdd„Zd„ Zd„ Zy)Ú_NamedTemporaryFilec                 ój   — dd l }dd l}|j                  |¬«      \  }| _        |j	                  |«       y )Nr   )Úsuffix)ÚosÚtempfileÚmkstempÚnameÚclose)r   r&   r'   r(   Ú
filehandles        r   r   z_NamedTemporaryFile.__init__(   s.   € ÛÛà (× 0Ñ 0¸Ð 0Ó ?Ñˆ
�D”IØ
�‰�Õr   c                 ó   — | S r   r   r   s    r   r   z_NamedTemporaryFile.__enter__/   r   r   c                 óB   — dd l }|j                  | j                  «       y )Nr   )r'   Úremover*   )r   r   r   r   r'   s        r   r   z_NamedTemporaryFile.__exit__2   s   € Ûà
�	‰	�$—)‘)Õr   N)Ú )r   r    r!   r   r   r   r   r   r   r$   r$   '   s   „ óòór   r$   c                  óL   ‡‡— dd l } dd lŠdd lŠ| j                  ˆˆfd„«       }|S )Nr   c               3   óX   •K  — ‰j                  «       } | –— ‰j                  | «       y ­wr   )ÚmkdtempÚrmtree)Útemp_dirÚshutilr(   s    €€r   Ú_tempdir_mgrz$_tempdir_maker.<locals>._tempdir_mgr=   s&   øè ø€ à×#Ñ#Ó%ˆØŠØ�‰�hÕùs   ƒ'*)Ú
contextlibr6   r(   Úcontextmanager)r8   r7   r6   r(   s     @@r   Ú_tempdir_makerr:   8   s,   ù€ ÛÛÛà×Ñô ó ð ð
 Ðr   c                   ó@   — e Zd ZdZd„ Zed	d„«       Zd„ Zd„ Zd„ Z	d„ Z
y)
Ú_GAXBaseAPIFc                 ó:   — | j                   j                  |«       y r   )Ú__dict__Úupdate)r   r   s     r   r   z_GAXBaseAPI.__init__Q   s   € Ø�‰×Ñ˜RÕ r   Nc                 óL   — ddl m} ddlm} d} |dd || |«      } ||d d d «      S )Nr   )Ú	_RPCState)ÚGrpcRendezvouszSome error details.r   )Úgrpc._channelrA   Úgoogle.cloud.exceptionsrB   )Ústatus_codeÚtrailingrA   rB   ÚdetailsÚ	exc_states         r   Ú_make_grpc_errorz_GAXBaseAPI._make_grpc_errorT   s0   € å+Ý:à'ˆÙ˜b $¨°+¸wÓGˆ	Ù˜i¨¨t°TÓ:Ð:r   c                 óD   — ddl m} | j                  |j                  «      S ©Nr   )Ú
StatusCode)ÚgrpcrL   rI   Ú	NOT_FOUND©r   rL   s     r   Ú_make_grpc_not_foundz _GAXBaseAPI._make_grpc_not_found]   s   € Ý#à×$Ñ$ Z×%9Ñ%9Ó:Ð:r   c                 óD   — ddl m} | j                  |j                  «      S rK   )rM   rL   rI   ÚFAILED_PRECONDITIONrO   s     r   Ú_make_grpc_failed_preconditionz*_GAXBaseAPI._make_grpc_failed_preconditionb   s   € Ý#à×$Ñ$ Z×%CÑ%CÓDÐDr   c                 óD   — ddl m} | j                  |j                  «      S rK   )rM   rL   rI   ÚALREADY_EXISTSrO   s     r   Ú_make_grpc_already_existsz%_GAXBaseAPI._make_grpc_already_existsg   s   € Ý#à×$Ñ$ Z×%>Ñ%>Ó?Ð?r   c                 óD   — ddl m} | j                  |j                  «      S rK   )rM   rL   rI   ÚDEADLINE_EXCEEDEDrO   s     r   Ú_make_grpc_deadline_exceededz(_GAXBaseAPI._make_grpc_deadline_exceededl   s   € Ý#à×$Ñ$ Z×%AÑ%AÓBÐBr   r   )r   r    r!   Ú_random_gax_errorr   ÚstaticmethodrI   rP   rS   rV   rY   r   r   r   r<   r<   N   s8   „ ØÐò!ð ò;ó ð;ò;ò
Eò
@ó
Cr   r<   c                   ó   — e Zd Zd„ Zd„ Zy)Ú_GAXPageIteratorc                 óP   — t        |«      | _        |j                  d«      | _        y )NÚ
page_token)ÚiterÚ_pagesÚgetr_   )r   ÚpagesÚkwargss      r   r   z_GAXPageIterator.__init__s   s   € Ü˜5“kˆŒØ Ÿ*™* \Ó2ˆ�r   c                 ó,   — t        | j                  «      S )zIterate to the next page.)Únextra   r   s    r   Ú__next__z_GAXPageIterator.__next__w   s   € ä�D—K‘KÓ Ð r   N)r   r    r!   r   rg   r   r   r   r]   r]   r   s   „ ò3ó!r   r]   N)
r"   Ú
__future__r   Úobjectr   r$   r:   Ú_tempdirr<   r]   r   r   r   ú<module>rk      sR   ðñ  å &ô-ˆfô -ô&˜&ô ò"ñ" Ó€Øô!C�&ô !CôH!�võ !r   