o
    ¯b›  ã                   @   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                   @   ó0   e Zd ZdZdd„ Zdd„ Zdd„ Zdd	„ Zd
S )ÚUsernamePasswordTestsz(
    Tests for L{UsernamePassword}.
    c                 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   úC/usr/lib/python3/dist-packages/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    ó   
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(   r   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_interfaceN©Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r   r   r      s    	r   c                   @   r   )ÚUsernameHashedPasswordTestsz.
    Tests for L{UsernameHashedPassword}.
    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   ó
   ÿ
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   r*   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_interfaceNr   r   r   r   r   r$   7   s    r$   N)r#   Útwisted.cred.credentialsr   r   r   Útwisted.cred.test.test_credr   Útwisted.trial.unittestr   r   r$   r   r   r   r   Ú<module>   s   %