Ë
    dQêjÝ  ã                   ó¾   — 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mZ ddlmZ dd	lmZ d
„ Zd„ Zed„ «       Zed„ «       Zed„ «       Z G d„ de«      Zy)é    N)Úcontextmanager)ÚIsolatedAsyncioTestCase)Úpatch)Úweb)Ú
TestClientÚ
TestServeré   )ÚConfigException)ÚOpenIDRequestorc                 ó   ‡ — ˆ fd„}|S )Nc              “   ó   •K  — ‰S ­w)N© )ÚrequestÚresponses    €úf/home/oem/CyberBrain26-unified/.venv/lib/python3.12/site-packages/kubernetes/aio/config/openid_test.pyÚ	responderz!make_responder.<locals>.responder   s   øè ø€ Øˆùs   ƒr   )r   r   s   ` r   Úmake_responderr      s   ø€ ôð Ðó    c                 óh   — t        t        j                  t        j                  | «      d¬«      «      S )Nzapplication/json)ÚtextÚcontent_type)r   r   ÚResponseÚjsonÚdumps)Údatas    r   Úrespond_jsonr      s*   € ÜÜ�‰Ü—‘˜DÓ!Ø+ô	
óð r   c               #   ó€  K  — t        j                  «       } t        j                  «       }|j                  j                  dt        ddi«      «       |j                  j                  dt        dddœ«      «       t        d«      5 }t        t        || ¬«      | ¬«      }||_        |–— d d d «       y # 1 sw Y   y xY w­w)	Nú!/.well-known/openid-configurationÚtoken_endpointú/tokenúid-token-dataúrefresh-token-data)úid-tokenúrefresh-tokenú2kubernetes.aio.config.openid.aiohttp.ClientSession©Úloop)ÚasyncioÚget_event_loopr   ÚApplicationÚrouterÚadd_getr   Úadd_postr   Ú_TestClientÚ_TestServerÚreturn_value©r'   ÚappÚ_client_sessionÚclients       r   Úworking_clientr5   !   sŸ   è ø€ ä×!Ñ!Ó#€DÜ
�/‰/Ó
€CØ‡J�J×ÑÐ:¼LÐJZÐ\dÐIeÓ<fÔgØ‡J�J×Ñ˜¤,¸OÐ^rÑ/sÓ"tÔuä	ÐCÓ	Dð ÈÜœ[¨°4Ô8¸tÔDˆØ'-ˆÔ$àŠ÷	÷ ñ üs   ‚BB>Â$B2Â)	B>Â2B;Â7B>c               #   óT  K  — t        j                  «       } t        j                  «       }|j                  j                  dt        t        j                  d¬«      «      «       t        d«      5 }t        t        || ¬«      | ¬«      }||_        |–— d d d «       y # 1 sw Y   y xY w­w)Nr   éô  ©Ústatusr%   r&   )r(   r)   r   r*   r+   r,   r   r   r   r.   r/   r0   r1   s       r   Úfail_well_known_clientr:   /   sƒ   è ø€ ä×!Ñ!Ó#€DÜ
�/‰/Ó
€CØ‡J�J×ÑÐ:¼NÌ3Ï<É<Ð_bÔKcÓ<dÔeä	ÐCÓ	Dð ÈÜœ[¨°4Ô8¸tÔDˆØ'-ˆÔ$ØŠ÷÷ ñ üs   ‚A-B(Á/$BÂ	B(ÂB%Â!B(c               #   ó¢  K  — t        j                  «       } t        j                  «       }|j                  j                  dt        ddi«      «       |j                  j                  dt        t        j                  d¬«      «      «       t        d«      5 }t        t        || ¬«      | ¬«      }||_        |–— d d d «       y # 1 sw Y   y xY w­w)Nr   r   r    r7   r8   r%   r&   )r(   r)   r   r*   r+   r,   r   r-   r   r   r   r.   r/   r0   r1   s       r   Úfail_token_request_clientr<   ;   s¢   è ø€ ä×!Ñ!Ó#€DÜ
�/‰/Ó
€CØ‡J�J×ÑÐ:¼LÐJZÐ\dÐIeÓ<fÔgØ‡J�J×Ñ˜¤.´·±ÀSÔ1IÓ"JÔKä	ÐCÓ	Dð ÈÜœ[¨°4Ô8¸tÔDˆØ'-ˆÔ$àŠ÷	÷ ñ üs   ‚BCÂ$CÂ:	CÃCÃCc                   ó$   — e Zd Zd„ Zd„ Zd„ Zd„ Zy)ÚOpenIDRequestorTestc                 ó(   — t        ddd«      | _        y )Nz	client-idzclient-secretÚ )r   Ú	requestor©Úselfs    r   ÚsetUpzOpenIDRequestorTest.setUpK   s   € Ü(ØØØó
ˆ�r   c              ƒ   ó¾   K  — t        «       5  | j                  j                  d«      ƒ d {  –—† }|d   dk(  sJ ‚|d   dk(  sJ ‚	 d d d «       y 7 Œ"# 1 sw Y   y xY w­w)Númy-refresh-tokenr#   r!   r$   r"   )r5   rA   Úrefresh_token)rC   Úresps     r   Útest_refresh_token_successz.OpenIDRequestorTest.test_refresh_token_successR   sm   è ø€ ÜÓñ 	AØŸ™×5Ñ5Ð6HÓI×IˆDà˜
Ñ# Ò6Ð6Ð6Ø˜Ñ(Ð,@Ò@Ð@Ñ@÷		Að 	AØIø÷	Að 	Aüs,   ‚A�A¬A­AÁ	AÁAÁAÁAc              ƒ   óè   K  — t        «       5  | j                  t        «      5  | j                  j	                  d«      ƒ d {  –—†  d d d «       d d d «       y 7 Œ# 1 sw Y   ŒxY w# 1 sw Y   y xY w­w©NrF   )r:   ÚassertRaisesr
   rA   rG   rB   s    r   Útest_failed_well_knownz*OpenIDRequestorTest.test_failed_well_knownY   sn   è ø€ Ü#Ó%ñ 	GØ×"Ñ"¤?Ó3ñ GØ—n‘n×2Ñ2Ð3EÓF×FÐF÷G÷	Gð 	GàFø÷Gð Gú÷	Gð 	GüóE   ‚A2�A&£AÁAÁAÁA&Á	A2ÁAÁA#	ÁA&Á&A/Á+A2c              ƒ   óè   K  — t        «       5  | j                  t        «      5  | j                  j	                  d«      ƒ d {  –—†  d d d «       d d d «       y 7 Œ# 1 sw Y   ŒxY w# 1 sw Y   y xY w­wrK   )r<   rL   r
   rA   rG   rB   s    r   Útest_failed_refresh_tokenz-OpenIDRequestorTest.test_failed_refresh_token^   sn   è ø€ Ü&Ó(ñ 	GØ×"Ñ"¤?Ó3ñ GØ—n‘n×2Ñ2Ð3EÓF×FÐF÷G÷	Gð 	GàFø÷Gð Gú÷	Gð 	GürN   N)Ú__name__Ú
__module__Ú__qualname__rD   rI   rM   rP   r   r   r   r>   r>   I   s   „ ò
òAòGó
Gr   r>   )r(   r   Ú
contextlibr   Úunittestr   Úunittest.mockr   Úaiohttpr   Úaiohttp.test_utilsr   r.   r   r/   Úconfig_exceptionr
   Úopenidr   r   r   r5   r:   r<   r>   r   r   r   ú<module>r[      sy   ðÛ Û Ý %Ý ,Ý å ÷õ .Ý #òòð ñ
ó ð
ð ñó ðð ñ
ó ð
ôGÐ1õ Gr   