Your IP : 216.73.216.213


Current Path : /opt/alt/python39/lib64/python3.9/test/__pycache__/
Upload File :
Current File : //opt/alt/python39/lib64/python3.9/test/__pycache__/test_getpass.cpython-39.opt-1.pyc

a

XC?h%�@s�ddlZddlZddlZddlmZmZmZddlmZddlm	Z	zddl
Z
WneyfdZ
Yn0zddlZWney�dZYn0e�
d�Gdd�dej��ZGdd	�d	ej�Ze�e
d
�Gdd�dej��Zed
kr�e��dS)�N)�BytesIO�StringIO�
TextIOWrapper)�mock)�supportz
os.environc@s$eZdZdd�Zdd�Zdd�ZdS)�GetpassGetuserTestcCs d}||j_|�|t���dS)N�	some_name)�get�return_value�assertEqual�getpass�getuser)�self�environ�
expected_name�r�6/opt/alt/python39/lib64/python3.9/test/test_getpass.py�%test_username_takes_username_from_envsz8GetpassGetuserTest.test_username_takes_username_from_envcCsFd|j_zt��Wnty&Yn0|�|jjdd�dD��dS)NcSsg|]}t�|��qSr)rZcall)�.0�xrrr�
<listcomp>!�zMGetpassGetuserTest.test_username_priorities_of_env_values.<locals>.<listcomp>)ZLOGNAMEZUSERZLNAMEZUSERNAME)r	r
rr
�ImportErrorrZcall_args_list)rrrrr�&test_username_priorities_of_env_valuess�z9GetpassGetuserTest.test_username_priorities_of_env_valuesc	Cs�d}d|j_tr�t�d��b}t�d��8}d|_|g|_|�|t���|�d�Wd�n1sd0YWd�q�1s�0Yn|�	t
tj�dS)Nrz	os.getuidzpwd.getpwuid�*)r	r
�pwdr�patchrrr
�assert_called_once_with�assertRaisesr)rrrZuidZgetpwrrr�test_username_falls_back_to_pwd#s��Hz2GetpassGetuserTest.test_username_falls_back_to_pwdN)�__name__�
__module__�__qualname__rrrrrrrrs
rc@sPeZdZdd�Zdd�Ze�d�dd��Ze�d�dd	��Zd
d�Z	dd
�Z
dS)�GetpassRawinputTestcCs2tjtd�}td�}tjd||d�|j��dS)N��spec�input_string�some_prompt��input)r�Mockrr�
_raw_input�flushr)r�streamr)rrr� test_flushes_stream_after_prompt4sz4GetpassRawinputTest.test_flushes_stream_after_promptcCsTtd�}d}t�d��*}tj||d�|j�|�Wd�n1sF0YdS)Nr&r'z
sys.stderrr()rrrrr+�writer)rr)�prompt�stderrrrr�test_uses_stderr_as_default;s
z/GetpassRawinputTest.test_uses_stderr_as_default�	sys.stdincCs$d|j_tjt�d�|j��dS)Nr&�r-)�readliner
rr+rr)r�
mock_inputrrr� test_uses_stdin_as_default_inputBsz4GetpassRawinputTest.test_uses_stdin_as_default_inputcCs2tt�dd�}d|j_tjd|d�|j��dS)N�ascii)�encodinguHasło: )r0r-)rrr5r
rr+r)rr6r-rrr�#test_uses_stdin_as_different_localeHsz7GetpassRawinputTest.test_uses_stdin_as_different_localecCstd�}|jttj|d�dS)N�r()rr�EOFErrorrr+�rr)rrr�test_raises_on_empty_inputPsz.GetpassRawinputTest.test_raises_on_empty_inputcCs td�}|�dtj|d��dS)Nztest
�testr()rrrr+r=rrr�test_trims_trailing_newlineTsz/GetpassRawinputTest.test_trims_trailing_newlineN)r r!r"r.r2rrr7r:r>r@rrrrr#2s

r#z!tests require system with termiosc@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�UnixGetpassTestc
Cs�t�d���}t�d��v}t�d��L}d|_t��|�dtjtjB�|�|jd�|�|j�Wd�n1st0YWd�n1s�0YWd�n1s�0YdS)N�os.open�	io.FileIO�io.TextIOWrapperz/dev/ttyzw+)	rrr
r�unix_getpassr�os�O_RDWR�O_NOCTTY)r�open�fileio�textiorrr�test_uses_tty_directlyas��
�z&UnixGetpassTest.test_uses_tty_directlycCst�d���}t�d���t�d���t�d��j}t�d��@}d|_gd�}t|�|_t��|�dtj|�Wd�n1s�0YWd�n1s�0YWd�n1s�0YWd�n1s�0YWd�n1s�0YdS)NrBrCrD�termios.tcgetattr�termios.tcsetattr�)�rPrPrPrP)rrr
�listrrE�assert_called_with�ANY)rrIZ	tcgetattr�	tcsetattrZ
fake_attrsrrr�test_resets_termiosos ����
z#UnixGetpassTest.test_resets_termiosc
Cs2t�d���}t�d���}t�d���}t�d���t�d��f}t�d��<}d|_t�|_tj|_t��|�	d|j�Wd�n1s�0YWd�n1s�0YWd�n1s�0YWd�n1s�0YWd�n1�s0YWd�n1�s$0YdS)	NrBrCrDrMrNzgetpass.fallback_getpassrOz
Password: )
rrr
r�termios�error�side_effectrrEr)rrIrJrKrTZfallbackrrr�-test_falls_back_to_fallback_if_termios_raises{s,������z=UnixGetpassTest.test_falls_back_to_fallback_if_termios_raisescCs�t�d���}t�d���t�d���t�d��bt�d��8d|_tjtd�}tj|d�|j��Wd�n1sx0YWd�n1s�0YWd�n1s�0YWd�n1s�0YWd�n1s�0YdS)	NrBrCrDrMrNrOr$r4)	rrr
r*rrrEr,rR)rrIZmock_streamrrr�test_flushes_stream_after_input�s����z/UnixGetpassTest.test_flushes_stream_after_inputcCs�t�d���}tjdtd���}t|_t|j_t���D}|�	t
j��t
��Wd�n1s^0YWd�n1s|0Y|j
��|�d|���|�d|���Wd�n1s�0YWd�n1s�0YdS)NrBr3r$�Warningz	Password:)rrr�IOErrorrX�AttributeError�filenorZcaptured_stderrZassertWarnsrZGetPassWarningrEr5rZassertIn�getvalue)rZos_open�stdinr1rrr�test_falls_back_to_stdin�s�
D
z(UnixGetpassTest.test_falls_back_to_stdinN)r r!r"rLrUrYrZrarrrrrA^s
rA�__main__)rrFZunittest�iorrrrr?rrVrrrZTestCaserr#Z
skipUnlessrAr �mainrrrr�<module>s(

 ,
C