U
    Ü¦—\&  ã                   @   s<   d dl Z d dlZd dlmZ e jdd„ ƒZG dd„ dƒZdS )é    N)Úbackendc                 C   s   dd„ }|   d|¡ d S )Nc                  S   s0   G dd„ dt jƒ} G dd„ dt jƒ}| ƒ |ƒ fS )Nc                   @   s    e Zd ZdZdd„ Zdd„ ZdS )z/two_keyrings.<locals>.get_two.<locals>.Keyring1é   c                 S   s   dj f tƒ ŽS )Nzring1-{system}-{user}©ÚformatÚlocals©ÚselfÚsystemÚuser© r   úE/usr/lib/python3/dist-packages/keyring/tests/backends/test_chainer.pyÚget_password   s    z<two_keyrings.<locals>.get_two.<locals>.Keyring1.get_passwordc                 S   s   d S ©Nr   ©r   r	   r
   Zpasswordr   r   r   Úset_password   s    z<two_keyrings.<locals>.get_two.<locals>.Keyring1.set_passwordN©Ú__name__Ú
__module__Ú__qualname__Zpriorityr   r   r   r   r   r   ÚKeyring1
   s   r   c                   @   s    e Zd ZdZdd„ Zdd„ ZdS )z/two_keyrings.<locals>.get_two.<locals>.Keyring2é   c                 S   s   dj f tƒ ŽS )Nzring2-{system}-{user}r   r   r   r   r   r      s    z<two_keyrings.<locals>.get_two.<locals>.Keyring2.get_passwordc                 S   s
   t ƒ ‚d S r   )ÚNotImplementedErrorr   r   r   r   r      s    z<two_keyrings.<locals>.get_two.<locals>.Keyring2.set_passwordNr   r   r   r   r   ÚKeyring2   s   r   )r   ZKeyringBackend)r   r   r   r   r   Úget_two	   s    		ztwo_keyrings.<locals>.get_twozkeyring.backend.get_all_keyring)Úsetattr)Zmonkeypatchr   r   r   r   Útwo_keyrings   s    r   c                   @   s   e Zd Zdd„ ZdS )ÚTestChainerc                 C   s(   t jj ¡ }| dd¡}|dks$t‚d S )NZalphaZbravozring2-alpha-bravo)ÚkeyringZbackendsÚchainerZChainerBackendr   ÚAssertionError)r   r   r   Zpwr   r   r   Ú'test_chainer_gets_from_highest_priority"   s    z3TestChainer.test_chainer_gets_from_highest_priorityN)r   r   r   r    r   r   r   r   r   !   s   r   )ZpytestZkeyring.backends.chainerr   r   Zfixturer   r   r   r   r   r   Ú<module>   s
   
