§
    [þ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dS )é    N)Úcontextmanager)ÚIsolatedAsyncioTestCase)Úpatch)Úweb)Ú
TestClientÚ
TestServeré   )ÚConfigException)ÚOpenIDRequestorc                 ó   ‡ — ˆ fd„}|S )Nc              “   ó   •K  — ‰S )N© )ÚrequestÚresponses    €úb/var/www/FlaskApp/flask-venv/lib/python3.11/site-packages/kubernetes_asyncio/config/openid_test.pyÚ	responderz!make_responder.<locals>.responder   s   øè è € Øˆó    r   )r   r   s   ` r   Úmake_responderr      s$   ø€ ðð ð ð ð ð Ðr   c                 ól   — t          t          j        t          j        | ¦  «        d¬¦  «        ¦  «        S )Nzapplication/json)ÚtextÚcontent_type)r   r   ÚResponseÚjsonÚdumps)Údatas    r   Úrespond_jsonr      s8   € ÝÝŒÝ”˜DÑ!Ô!Ø+ð	
ñ 	
ô 	
ñô ð r   c               #   ó¦  K  — t          j        ¦   «         } t          j        ¦   «         }|j                             dt          ddi¦  «        ¦  «         |j                             dt          dddœ¦  «        ¦  «         t          d¦  «        5 }t          t          || ¬¦  «        | ¬¦  «        }||_        |V — d d d ¦  «         d S # 1 swxY w Y   d S )	Nú!/.well-known/openid-configurationÚtoken_endpointú/tokenúid-token-dataúrefresh-token-data)úid-tokenúrefresh-tokenú6kubernetes_asyncio.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×ÒÐ:½LÐJZÐ\dÐIeÑ<fÔ<fÑgÔgÐgØ„J×Ò˜¥,¸OÐ^rÐ/sÐ/sÑ"tÔ"tÑuÔuÐuå	ÐGÑ	HÔ	Hð ÈOÝ[¨°4Ð8Ñ8Ô8¸tÐDÑDÔDˆØ'-ˆÔ$àˆˆˆð	ð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Â,CÃC
ÃC
c               #   ór  K  — t          j        ¦   «         } t          j        ¦   «         }|j                             dt          t          j        d¬¦  «        ¦  «        ¦  «         t          d¦  «        5 }t          t          || ¬¦  «        | ¬¦  «        }||_        |V — d d d ¦  «         d S # 1 swxY w Y   d S )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×ÒÐ:½NÍ3Ì<Ð_bÐKcÑKcÔKcÑ<dÔ<dÑeÔeÐeå	ÐGÑ	HÔ	Hð ÈOÝ[¨°4Ð8Ñ8Ô8¸tÐDÑDÔDˆØ'-ˆÔ$Øˆˆˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Á3,B,Â,B0Â3B0c               #   óÆ  K  — t          j        ¦   «         } t          j        ¦   «         }|j                             dt          ddi¦  «        ¦  «         |j                             dt          t          j	        d¬¦  «        ¦  «        ¦  «         t          d¦  «        5 }t          t          || ¬¦  «        | ¬¦  «        }||_        |V — d d d ¦  «         d S # 1 swxY w Y   d S )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×ÒÐ:½LÐJZÐ\dÐIeÑ<fÔ<fÑgÔgÐgØ„J×Ò˜¥.µ´ÀSÐ1IÑ1IÔ1IÑ"JÔ"JÑKÔKÐKå	ÐGÑ	HÔ	Hð ÈOÝ[¨°4Ð8Ñ8Ô8¸tÐDÑDÔDˆØ'-ˆÔ$àˆˆˆð	ð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   Â,CÃCÃCc                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚOpenIDRequestorTestc                 ó2   — t          ddd¦  «        | _        d S )Nz	client-idzclient-secretÚ )r   Ú	requestor©Úselfs    r   ÚsetUpzOpenIDRequestorTest.setUpK   s    € Ý(ØØØñ
ô 
ˆŒˆˆr   c              ƒ   óÒ   K  — t          ¦   «         5  | j                             d¦  «        ƒ d {V —†}|d         dk    sJ ‚|d         dk    sJ ‚	 d d d ¦  «         d S # 1 swxY w Y   d S )Númy-refresh-tokenr#   r!   r$   r"   )r5   rA   Úrefresh_token)rC   Úresps     r   Útest_refresh_token_successz.OpenIDRequestorTest.test_refresh_token_successR   sâ   è è € ÝÑÔð 	Að 	AØœ×5Ò5Ð6HÑIÔIÐIÐIÐIÐIÐIÐIˆDà˜
Ô# Ò6Ð6Ð6Ð6Ø˜Ô(Ð,@Ò@Ð@Ð@Ð@Ð@ð		Að 	Að 	Añ 	Aô 	Að 	Að 	Að 	Að 	Að 	Að 	Að 	Aøøøð 	Að 	Að 	Að 	Að 	Að 	As   ‘=AÁA Á#A c              ƒ   óü   K  — t          ¦   «         5  |                      t          ¦  «        5  | j                             d¦  «        ƒ d {V —† d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S ©NrF   )r:   ÚassertRaisesr
   rA   rG   rB   s    r   Útest_failed_well_knownz*OpenIDRequestorTest.test_failed_well_knownY   s-  è è € Ý#Ñ%Ô%ð 	Gð 	GØ×"Ò"¥?Ñ3Ô3ð Gð GØ”n×2Ò2Ð3EÑFÔFÐFÐFÐFÐFÐFÐFÐFðGð Gð Gñ Gô Gð Gð Gð Gð Gð Gð Gøøøð Gð Gð Gð Gð	Gð 	Gð 	Gñ 	Gô 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gøøøð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gó4   ‘A1¬!AÁA1ÁA	ÁA1Á A	Á!A1Á1A5Á8A5c              ƒ   óü   K  — t          ¦   «         5  |                      t          ¦  «        5  | j                             d¦  «        ƒ d {V —† d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S rK   )r<   rL   r
   rA   rG   rB   s    r   Útest_failed_refresh_tokenz-OpenIDRequestorTest.test_failed_refresh_token^   s-  è è € Ý&Ñ(Ô(ð 	Gð 	GØ×"Ò"¥?Ñ3Ô3ð Gð GØ”n×2Ò2Ð3EÑFÔFÐFÐFÐFÐFÐFÐFÐFðGð Gð Gñ Gô Gð Gð Gð Gð Gð Gð Gøøøð Gð Gð Gð Gð	Gð 	Gð 	Gñ 	Gô 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gð 	Gøøøð 	Gð 	Gð 	Gð 	Gð 	Gð 	GrN   N)Ú__name__Ú
__module__Ú__qualname__rD   rI   rM   rP   r   r   r   r>   r>   I   s[   € € € € € ð
ð 
ð 
ðAð Að AðGð Gð Gð
Gð Gð Gð 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[      s[  ðØ €€€Ø €€€Ø %Ð %Ð %Ð %Ð %Ð %Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð .Ð -Ð -Ð -Ð -Ð -Ø #Ð #Ð #Ð #Ð #Ð #ðð ð ðð ð ð ð
ð 
ñ „ð
ð ðð ñ „ðð ð
ð 
ñ „ð
ðGð Gð Gð Gð GÐ1ñ Gô Gð Gð Gð Gr   