§
    ±Û”ar  ã                   óØ   — d Z eZddlZddlZddlZddlZddlmZm	Z	 ddl
mZ ddlmZmZmZmZ  G d„ de¦  «        Z G d„ d	e¦  «        Z G d
„ de¦  «        Z G d„ de¦  «        Zd„ ZdS )z"Tests for the OAuth-aware classes.é    N)Ú	MockPatchÚTempDir)ÚTestCase)ÚAccessTokenÚConsumerÚOAuthAuthorizerÚSystemWideConsumerc                   ó   — e Zd Zd„ Zd„ ZdS )ÚTestConsumerc                 óÊ   — t          ddd¦  «        }|                      |j        d¦  «         |                      |j        d¦  «         |                      |j        d¦  «         d S )NÚkeyÚsecretÚapplication)r   ÚassertEqualr   r   Úapplication_name©ÚselfÚconsumers     úE/usr/lib/python3/dist-packages/lazr/restfulclient/tests/test_oauth.pyÚtest_data_fieldszTestConsumer.test_data_fields(   sb   € Ý˜E 8¨]Ñ;Ô;ˆØ×Ò˜œ uÑ-Ô-Ð-Ø×Ò˜œ¨(Ñ3Ô3Ð3Ø×Ò˜Ô2°MÑBÔBÐBÐBÐBó    c                 ó\   — t          dd¦  «        }|                      |j        d ¦  «         d S ©Nr   r   )r   r   r   r   s     r   Útest_default_application_namez*TestConsumer.test_default_application_name.   s0   € å˜E 8Ñ,Ô,ˆØ×Ò˜Ô2°DÑ9Ô9Ð9Ð9Ð9r   N)Ú__name__Ú
__module__Ú__qualname__r   r   © r   r   r   r   '   s5   € € € € € ðCð Cð Cð:ð :ð :ð :ð :r   r   c                   ó&   — e Zd Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestAccessTokenc                 óÊ   — t          ddd¦  «        }|                      |j        d¦  «         |                      |j        d¦  «         |                      |j        d¦  «         d S )Nr   r   Úcontext)r   r   r   r   r"   ©r   Úaccess_tokens     r   r   z TestAccessToken.test_data_fields5   sd   € Ý" 5¨(°IÑ>Ô>ˆØ×Ò˜Ô)¨5Ñ1Ô1Ð1Ø×Ò˜Ô,¨hÑ7Ô7Ð7Ø×Ò˜Ô-¨yÑ9Ô9Ð9Ð9Ð9r   c                 óZ   — t          dd¦  «        }|                      |j        ¦  «         d S r   )r   ÚassertIsNoner"   r#   s     r   Útest_default_contextz$TestAccessToken.test_default_context;   s.   € å" 5¨(Ñ3Ô3ˆØ×Ò˜,Ô.Ñ/Ô/Ð/Ð/Ð/r   c                 ól   — t          dd¦  «        }|                      dt          |¦  «        ¦  «         d S )Núlock&keyúsecret=passwordú;oauth_token_secret=secret%3Dpassword&oauth_token=lock%26key)r   r   Ústrr#   s     r   Útest___str__zTestAccessToken.test___str__@   sB   € Ý" :Ð/@ÑAÔAˆØ×ÒØIÝ�ÑÔñ	
ô 	
ð 	
ð 	
ð 	
r   c                 óš   — t          j        d¦  «        }|                      |j        d¦  «         |                      |j        d¦  «         d S )Nr+   r)   r*   )r   Úfrom_stringr   r   r   r#   s     r   Útest_from_stringz TestAccessToken.test_from_stringG   sR   € Ý"Ô.ØIñ
ô 
ˆð 	×Ò˜Ô)¨:Ñ6Ô6Ð6Ø×Ò˜Ô,Ð.?Ñ@Ô@Ð@Ð@Ð@r   N)r   r   r   r   r'   r-   r0   r   r   r   r    r    4   sU   € € € € € ð:ð :ð :ð0ð 0ð 0ð

ð 
ð 
ðAð Að Að Að Ar   r    c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )ÚTestSystemWideConsumerc                 ó2  — |                       t          dd¬¦  «        ¦  «         |                       t          dd¬¦  «        ¦  «         |                       t          dd¬¦  «        ¦  «         t          d¦  «        }|                      |j        d	¦  «         d S )
Núdistro.nameÚFooix©Úreturn_valueúplatform.systemÚFooOSúsocket.gethostnameÚfooúapp namezSystem-wide: Fooix (foo)©Ú
useFixturer   r	   r   r   r   s     r   Útest_useful_distro_namez.TestSystemWideConsumer.test_useful_distro_nameP   s�   € ð 	�Š�	 -¸gÐFÑFÔFÑGÔGÐGØ�Š�	Ð"3À'ÐJÑJÔJÑKÔKÐKØ�Š�	Ð"6ÀUÐKÑKÔKÑLÔLÐLÝ% jÑ1Ô1ˆØ×Ò˜œÐ'AÑBÔBÐBÐBÐBr   c                 ó2  — |                       t          dd¬¦  «        ¦  «         |                       t          dd¬¦  «        ¦  «         |                       t          dd¬¦  «        ¦  «         t          d¦  «        }|                      |j        d	¦  «         d S )
Nr4   Ú r6   r8   ÚBarOSr:   Úbarr<   zSystem-wide: BarOS (bar)r=   r   s     r   Útest_empty_distro_namez-TestSystemWideConsumer.test_empty_distro_nameY   s�   € ð 	�Š�	 -¸bÐAÑAÔAÑBÔBÐBØ�Š�	Ð"3À'ÐJÑJÔJÑKÔKÐKØ�Š�	Ð"6ÀUÐKÑKÔKÑLÔLÐLÝ% jÑ1Ô1ˆØ×Ò˜œÐ'AÑBÔBÐBÐBÐBr   c                 óL  — |                       t          dt          d¦  «        ¬¦  «        ¦  «         |                       t          dd¬¦  «        ¦  «         |                       t          dd¬¦  «        ¦  «         t          d	¦  «        }|                      |j        d
¦  «         d S )Nr4   zOh noes!)Úside_effectr8   ÚBazOSr6   r:   Úbazr<   zSystem-wide: BazOS (baz))r>   r   Ú	Exceptionr	   r   r   r   s     r   Útest_broken_distro_namez.TestSystemWideConsumer.test_broken_distro_nameb   s    € ð 	�ŠÝ�mµ¸:Ñ1FÔ1FÐGÑGÔGñ	
ô 	
ð 	
ð 	�Š�	Ð"3À'ÐJÑJÔJÑKÔKÐKØ�Š�	Ð"6ÀUÐKÑKÔKÑLÔLÐLÝ% jÑ1Ô1ˆØ×Ò˜œÐ'AÑBÔBÐBÐBÐBr   N)r   r   r   r?   rD   rJ   r   r   r   r2   r2   O   sL   € € € € € ðCð Cð CðCð Cð Cð	Cð 	Cð 	Cð 	Cð 	Cr   r2   c                   ó   — e Zd ZdZd„ ZdS )ÚTestOAuthAuthorizerzTest for the OAuth Authorizer.c                 ó4  — |                       t          ¦   «         ¦  «        j        }t          j                             |d¦  «        }t          ddt          dd¦  «        ¬¦  «        }|                     |¦  «         |                      t          j         	                    |¦  «        ¦  «         |  
                    t          j        t          j        |¦  «        j        ¦  «        t          j        t          j        z  ¦  «         t          j        |¦  «        }|  
                    |j        j        d¦  «         |  
                    |j        j        d¦  «         |  
                    |j        j        d¦  «         |  
                    |j        j        d¦  «         d S )NÚcredentialszconsumer.keyzconsumer.secretz
access.keyzaccess.secret)Úconsumer_secretr$   )r>   r   ÚpathÚosÚjoinr   r   Úsave_to_pathÚ
assertTrueÚexistsr   ÚstatÚS_IMODEÚst_modeÚS_IREADÚS_IWRITEÚload_from_pathr   r   r   r$   )r   Útemp_dirÚcredentials_pathrN   Úloaded_credentialss        r   Ú test_save_to_and_load_from__pathz4TestOAuthAuthorizer.test_save_to_and_load_from__pathq   sk  € ð —?’?¥7¡9¤9Ñ-Ô-Ô2ˆÝœ7Ÿ<š<¨°-Ñ@Ô@ÐÝ%ØØ-Ý$ \°?ÑCÔCð
ñ 
ô 
ˆð
 	× Ò Ð!1Ñ2Ô2Ð2Ø�Š�œŸšÐ'7Ñ8Ô8Ñ9Ô9Ð9ð 	×ÒÝŒL�œÐ!1Ñ2Ô2Ô:Ñ;Ô;ÝŒL�4œ=Ñ(ñ	
ô 	
ð 	
õ
 -Ô;Ð<LÑMÔMÐØ×ÒÐ+Ô4Ô8¸.ÑIÔIÐIØ×ÒÐ+Ô4Ô;Ð=NÑOÔOÐOØ×ÒÐ+Ô8Ô<¸lÑKÔKÐKØ×ÒØÔ+Ô2°Oñ	
ô 	
ð 	
ð 	
ð 	
r   N)r   r   r   Ú__doc__r_   r   r   r   rL   rL   n   s)   € € € € € Ø(Ð(ð
ð 
ð 
ð 
ð 
r   rL   c                  óX   — t          j        ¦   «                              t          ¦  «        S )N)ÚunittestÚ
TestLoaderÚloadTestsFromNamer   r   r   r   Ú
test_suitere   Ž   s   € ÝÔÑ Ô ×2Ò2µ8Ñ<Ô<Ð<r   )r`   ÚtypeÚ__metaclass__rQ   Úos.pathrV   rb   Úfixturesr   r   Ú	testtoolsr   Ú"lazr.restfulclient.authorize.oauthr   r   r   r	   r   r    r2   rL   re   r   r   r   ú<module>rl      sp  ðð$ )Ð (à€ð 
€	€	€	Ø €€€Ø €€€Ø €€€à 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð
:ð 
:ð 
:ð 
:ð 
:�8ñ 
:ô 
:ð 
:ðAð Að Að Að A�hñ Aô Að Að6Cð Cð Cð Cð C˜Xñ Cô Cð Cð>
ð 
ð 
ð 
ð 
˜(ñ 
ô 
ð 
ð@=ð =ð =ð =ð =r   