U
    P|jÛ  ã                   @   sT   d Z ddlmZmZmZ ddlmZ ddlmZ G dd„ deƒZ	G dd„ deƒZ
d	S )
z<
Tests for basic constructs of L{twisted.cred.credentials}.
é    )ÚIUsernameHashedPasswordÚIUsernamePasswordÚUsernamePassword)Ú_uhpVersion)ÚTestCasec                   @   sH   e Zd ZdZddœdd„Zddœdd„Zddœdd	„Zddœd
d„ZdS )ÚUsernamePasswordTestsz(
    Tests for L{UsernamePassword}.
    N©Úreturnc                 C   s*   t ddƒ}|  |jd¡ |  |jd¡ dS )zo
        The initialisation of L{UsernamePassword} will set C{username} and
        C{password} on it.
        ó   fooó   barN)r   ÚassertEqualÚusernameÚpassword©ÚselfÚcreds© r   úE/tmp/pip-unpacked-wheel-audpp6lv/twisted/cred/test/test_simpleauth.pyÚtest_initialisation   s    
z)UsernamePasswordTests.test_initialisationc                 C   s   t ddƒ}|  | d¡¡ dS )z–
        Calling C{checkPassword} on a L{UsernamePassword} will return L{True}
        when the password given is the password on the object.
        ó   useró   passN)r   Ú
assertTrueÚcheckPasswordr   r   r   r   Útest_correctPassword    s    
z*UsernamePasswordTests.test_correctPasswordc                 C   s   t ddƒ}|  | d¡¡ dS )z›
        Calling C{checkPassword} on a L{UsernamePassword} will return L{False}
        when the password given is NOT the password on the object.
        r   r   ó   someotherpassN)r   ÚassertFalser   r   r   r   r   Útest_wrongPassword(   s    
z(UsernamePasswordTests.test_wrongPasswordc                 C   s   |   t t¡¡ dS )zF
        L{UsernamePassword} implements L{IUsernamePassword}.
        N)r   r   ÚimplementedByr   )r   r   r   r   Útest_interface0   s    z$UsernamePasswordTests.test_interface©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r   r   r      s
   	r   c                   @   sH   e Zd ZdZddœdd„Zddœdd„Zddœdd	„Zddœd
d„ZdS )ÚUsernameHashedPasswordTestsz.
    Tests for L{UsernameHashedPassword}.
    Nr   c                 C   s8   |   ddt¡}|ddƒ}|  |jd¡ |  |jd¡ dS )zs
        The initialisation of L{UsernameHashedPassword} will set C{username}
        and C{hashed} on it.
        útwisted.cred.credentialsÚUsernameHashedPasswordr
   r   N)ÚgetDeprecatedModuleAttributer   r   r   Úhashed©r   r&   r   r   r   r   r   <   s      ÿ
z/UsernameHashedPasswordTests.test_initialisationc                 C   s,   |   ddt¡}|ddƒ}|  | d¡¡ dS )zœ
        Calling C{checkPassword} on a L{UsernameHashedPassword} will return
        L{True} when the password given is the password on the object.
        r%   r&   r   r   N)r'   r   r   r   r)   r   r   r   r   H   s      ÿ
z0UsernameHashedPasswordTests.test_correctPasswordc                 C   s,   |   ddt¡}|ddƒ}|  | d¡¡ dS )z¡
        Calling C{checkPassword} on a L{UsernameHashedPassword} will return
        L{False} when the password given is NOT the password on the object.
        r%   r&   r   r   r   N)r'   r   r   r   r)   r   r   r   r   S   s      ÿ
z.UsernameHashedPasswordTests.test_wrongPasswordc                 C   s"   |   ddt¡}|  t |¡¡ dS )zR
        L{UsernameHashedPassword} implements L{IUsernameHashedPassword}.
        r%   r&   N)r'   r   r   r   r   )r   r&   r   r   r   r   ^   s      ÿz*UsernameHashedPasswordTests.test_interfacer   r   r   r   r   r$   7   s
   r$   N)r#   Ztwisted.cred.credentialsr   r   r   Ztwisted.cred.test.test_credr   Ztwisted.trial.unittestr   r   r$   r   r   r   r   Ú<module>   s
   %