Your IP : 216.73.216.60


Current Path : /opt/alt/python35/lib64/python3.5/test/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/test/__pycache__/test_getpass.cpython-35.opt-2.pyc



���]%�@s<ddlZddlZddlZddlmZmZmZddlmZddlm	Z	yddl
Z
Wnek
r�dZ
YnXyddlZWnek
r�dZYnXej
d�Gdd�dej��ZGdd	�d	ej�Zeje
d
�Gdd�dej��Zed
kr8ej�dS)�N)�BytesIO�StringIO�
TextIOWrapper)�mock)�supportz
os.environc@s4eZdZdd�Zdd�Zdd�ZdS)�GetpassGetuserTestcCs,d}||j_|j|tj��dS)N�	some_name)�get�return_value�assertEqual�getpass�getuser)�self�environ�
expected_name�r�1/opt/alt/python35/lib64/python3.5/test_getpass.py�%test_username_takes_username_from_envsz8GetpassGetuserTest.test_username_takes_username_from_envcCsVd|j_ytj�Wntk
r.YnX|j|jjdd�dD��dS)NcSsg|]}tj|��qSr)r�call)�.0�xrrr�
<listcomp>!s	zMGetpassGetuserTest.test_username_priorities_of_env_values.<locals>.<listcomp>�LOGNAME�USER�LNAME�USERNAME)rrrr)r	r
rr
�ImportErrorrZcall_args_list)rrrrr�&test_username_priorities_of_env_valuess
	z9GetpassGetuserTest.test_username_priorities_of_env_valuescCs�d}d|j_tr�tjd��X}tjd��?}d|_|g|_|j|tj��|jd�WdQRXWdQRXn|j	t
tj�dS)Nrz	os.getuidzpwd.getpwuid�*)r	r
�pwdr�patchrrr
�assert_called_once_with�assertRaisesr)rrr�uidZgetpwrrr�test_username_falls_back_to_pwd#s		
z2GetpassGetuserTest.test_username_falls_back_to_pwdN)�__name__�
__module__�__qualname__rrr$rrrrrs
rc@sveZdZdd�Zdd�Zejd�dd��Zejd�dd	��Zd
d�Z	dd
�Z
dS)�GetpassRawinputTestcCsEtjdt�}td�}tjd|d|�|jj�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_promptcCsRtd�}d}tjd��*}tj|d|�|jj|�WdQRXdS)Nr*r+z
sys.stderrr,)rrr rr.�writer!)rr,�prompt�stderrrrr�test_uses_stderr_as_default;s
z/GetpassRawinputTest.test_uses_stderr_as_defaultz	sys.stdincCs0d|j_tjdt��|jj�dS)Nr*r0)�readliner
rr.rr!)r�
mock_inputrrr� test_uses_stdin_as_default_inputBsz4GetpassRawinputTest.test_uses_stdin_as_default_inputcCsHtt�dd�}d|j_tjddd|�|jj�dS)N�encoding�asciiuHasło: r3r0)rrr6r
rr.r!)rr7r0rrr�#test_uses_stdin_as_different_localeHsz7GetpassRawinputTest.test_uses_stdin_as_different_localecCs)td�}|jttjd|�dS)N�r,)rr"�EOFErrorrr.)rr,rrr�test_raises_on_empty_inputPsz.GetpassRawinputTest.test_raises_on_empty_inputcCs,td�}|jdtjd|��dS)Nztest
�testr,)rrrr.)rr,rrr�test_trims_trailing_newlineTsz/GetpassRawinputTest.test_trims_trailing_newlineN)r%r&r'r1r5rr r8r;r>r@rrrrr(2sr(z!tests require system with termiosc@sLeZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�UnixGetpassTestcCs�tjd���}tjd��p}tjd��W}d|_tj�|jdtjtjB�|j|jd�|j|j�WdQRXWdQRXWdQRXdS)Nzos.openz	io.FileIOzio.TextIOWrapperz/dev/ttyzw+)	rr r
r�unix_getpassr!�os�O_RDWR�O_NOCTTY)r�open�fileio�textiorrr�test_uses_tty_directlyas	
	z&UnixGetpassTest.test_uses_tty_directlyc(Cs�tjd���}tjd���tjd���tjd��m}tjd��T}d|_dddddg}t|�|_tj�|jdtj|�WdQRXWdQRXWdQRXWdQRXWdQRXdS)Nzos.openz	io.FileIOzio.TextIOWrapperztermios.tcgetattrztermios.tcsetattr��)rr r
�listrrB�assert_called_with�ANY)rrFZ	tcgetattr�	tcsetattrZ
fake_attrsrrr�test_resets_termiosos	
z#UnixGetpassTest.test_resets_termiosc-Cs�tjd���}tjd���}tjd���}tjd��utjd��^}tjd��E}d|_t�|_tj|_tj�|j	d|j�WdQRXWdQRXWdQRXWdQRXWdQRXWdQRXdS)	Nzos.openz	io.FileIOzio.TextIOWrapperztermios.tcgetattrztermios.tcsetattrzgetpass.fallback_getpassrJz
Password: )
rr r
r�termios�error�side_effectrrBr!)rrFrGrHrO�fallbackrrr�-test_falls_back_to_fallback_if_termios_raises{s	
	z=UnixGetpassTest.test_falls_back_to_fallback_if_termios_raisesc&Cs�tjd���}tjd���tjd��ktjd��Ttjd��=d|_tjdt�}tjd|�|jj�WdQRXWdQRXWdQRXWdQRXWdQRXdS)	Nzos.openz	io.FileIOzio.TextIOWrapperztermios.tcgetattrztermios.tcsetattrrJr)r0)	rr r
r-rrrBr/rM)rrFZmock_streamrrr�test_flushes_stream_after_input�s	z/UnixGetpassTest.test_flushes_stream_after_inputcCs�tjd���}tjddt���}t|_t|j_tj��+}|j	t
j��t
j�WdQRXWdQRX|j
j�|jd|j��|jd|j��WdQRXWdQRXdS)Nzos.openz	sys.stdinr)�Warningz	Password:)rr r�IOErrorrS�AttributeError�filenorZcaptured_stderrZassertWarnsrZGetPassWarningrBr6r!ZassertIn�getvalue)rZos_open�stdinr4rrr�test_falls_back_to_stdin�s	
z(UnixGetpassTest.test_falls_back_to_stdinN)r%r&r'rIrPrUrVr]rrrrrA^s
rA�__main__)rrCZunittest�iorrrrr?rrQrrr ZTestCaserr(Z
skipUnlessrAr%�mainrrrr�<module>s(

 ,C