Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test_winconsoleio.cpython-311.opt-2.pyc
�

�KeG����	ddlZddlZddlZddlZddlZddlmZejdkrejd���ddl	m
Z
ejZGd�dej
��Zedkrej��dSdS)	�N)�	os_helper�win32ztest only relevant on win32)�write_inputc��eZdZd�Zd�Zd�Zejej	��dd�dkd��d���Z
d	�Zd
�Zd�Z
d�Zejd
d��d���Zd�Zejd
d��d���Zd�ZdS)�WindowsConsoleIOTestsc�2�|�tttj����|�tttj����|�tttj����dS)N)�
assertTrue�
issubclass�ConIO�io�	RawIOBase�assertFalse�BufferedIOBase�
TextIOBase��selfs �@/usr/local/apps/python3/lib/python3.11/test/test_winconsoleio.py�test_abczWindowsConsoleIOTests.test_abcsg�����
�5�"�,�7�7�8�8�8�����E�2�+<�=�=�>�>�>�����E�2�=�9�9�:�:�:�:�:�c��|�tdtd��tj��5}|���}|�tdt|��ddd��n#1swxYwY	td��}|�|�����|�|�	����|�
d|�����|���|���n#t$rYnwxYw	tdd��}|�|�����|�|�	����|�
d|�����|���|���n#t$rYnwxYw	tdd��}|�|�����|�|�	����|�
d|�����|���|���dS#t$rYdSwxYw)Nznegative file descriptor���z&Cannot open (console|non-console file)r��w�)�assertRaisesRegex�
ValueErrorr�tempfile�
TemporaryFile�filenor	�readabler�writable�assertEqual�close)r�tmpfile�fd�fs    r�test_open_fdz"WindowsConsoleIOTests.test_open_fds������z�&��r�	3�	3�	3��
#�
%�
%�	E�����!�!�B�
�"�"�:�8�%��
E�
E�
E�		E�	E�	E�	E�	E�	E�	E�	E�	E�	E�	E����	E�	E�	E�	E�
	��a���A�

�O�O�A�J�J�L�L�)�)�)����Q�Z�Z�\�\�*�*�*����Q����
�
�+�+�+�
�G�G�I�I�I�
�G�G�I�I�I�I���	�	�	��D�	����
	��a��
�
�A�

���Q�Z�Z�\�\�*�*�*��O�O�A�J�J�L�L�)�)�)����Q����
�
�+�+�+�
�G�G�I�I�I�
�G�G�I�I�I�I���	�	�	��D�	����
	��a��
�
�A�

���Q�Z�Z�\�\�*�*�*��O�O�A�J�J�L�L�)�)�)����Q����
�
�+�+�+�
�G�G�I�I�I�
�G�G�I�I�I�I�I���	�	�	��D�D�	���sG�7A9�9A=�A=�D3�3
E�?E�G3�3
H�?H�J4�4
K�Kc�*�|�tttj��td��}|�|�����|�|�����|�	|�
����|���|���td��}|�|�����|�|�����|�	|�
����|���|���tdd��}|�|�����|�|�����|�	|�
����|���|���tj��dd�dkrCtddd	�
��}|�|t��|���dSdS)N�CON�CONIN$�CONOUT$r���
ri�UzC:/con�rbr��	buffering)�assertRaisesrr�sys�
executabler	r rr!�assertIsNotNonerr#�getwindowsversion�open�assertIsInstance�rr&s  r�test_open_namez$WindowsConsoleIOTests.test_open_nameGs������*�e�S�^�<�<�<��%�L�L������
�
���%�%�%���������&�&�&����Q�X�X�Z�Z�(�(�(�	���	�	�	�	���	�	�	��(�O�O������
�
���%�%�%���������&�&�&����Q�X�X�Z�Z�(�(�(�	���	�	�	�	���	�	�	��)�S�!�!����������&�&�&�����
�
���%�%�%����Q�X�X�Z�Z�(�(�(�	���	�	�	�	���	�	�	�� �"�"�2�A�2�&��7�7��X�t�q�1�1�1�A��!�!�!�U�+�+�+�
�G�G�I�I�I�I�I�8�7rNr��rz+test does not work on Windows 7 and earlierc�
�tddd���}|�|t��|���tddd���}|�|t��|���dS)Nz
\\.\conin$r/rr0z//?/conout$�wb)r7r8rr#r9s  r�test_conin_conout_namesz-WindowsConsoleIOTests.test_conin_conout_namesesv��
����2�2�2�����a��'�'�'�	���	�	�	�����2�2�2�����a��'�'�'�	���	�	�	�	�	rc���tj��}|�tj|��t
j�|d��}t|dd���5}dtj
��dd�cxkrdkrnn|�|t��n|�
|t��ddd��dS#1swxYwYdS)Nr+r>rr0r;r,r-)r�mkdtemp�
addCleanupr�rmtree�os�path�joinr7r3r6r8r�assertNotIsInstance)r�	temp_path�conout_pathr&s    r�test_conout_pathz&WindowsConsoleIOTests.test_conout_pathps���$�&�&�	����	�(�)�4�4�4��g�l�l�9�i�8�8��
�+�t�q�
1�
1�
1�	3�Q���-�/�/����3�D�D�D�D�n�D�D�D�D�D��%�%�a��/�/�/�/��(�(��E�2�2�2�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3�	3����	3�	3�	3�	3�	3�	3s�&A!C�C�Cc��tdd��5}|�|�d��d��ddd��dS#1swxYwYdS)Nr+rrr)rr"�writer9s  r�test_write_empty_dataz+WindowsConsoleIOTests.test_write_empty_data}s���
�9�c�
"�
"�	.�a����Q�W�W�S�\�\�1�-�-�-�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.����	.�	.�	.�	.�	.�	.s�*A�A�Ac�>�tdd��}tj}	|t_t|jj|dz�dd����t��}|t_n#|t_wxYw|�||��dS)Nr*�rz
�	utf-16-le�
surrogatepass)	r7r3�stdinr�buffer�raw�encode�inputr")r�textrR�	old_stdin�actuals     r�assertStdinRoundTripz*WindowsConsoleIOTests.assertStdinRoundTrip�s����X�s�#�#���I�	�	"��C�I���� ����&�&�{�O�D�D�
�
�
��W�W�F�!�C�I�I��	�C�I�!�!�!�!������&�&�&�&�&s�AA6�6Bc��|�d��|�d��|�d��dS)N�abc123uϼўТλФЙuA͏B ﬖ̳AA̝�rZrs r�
test_inputz WindowsConsoleIOTests.test_input�sE���!�!�(�+�+�+��!�!�.�1�1�1��!�!�"2�3�3�3�3�3rTz%Handling Non-BMP characters is brokenc�0�|�d��dS)Nu􀀀􏿿􏿽r]rs r�test_input_nonbmpz'WindowsConsoleIOTests.test_input_nonbmp�s��	
�!�!�"B�C�C�C�C�Crc	���d�d��}d�d��}tdd��D]�}tddd�	��5}t||��d
}|�d��s/|�|��}||z
}|�d���/|�||d�|����ddd��n#1swxYwY��dS)
NuϼўТλФЙ
rP�utf-8r�r*r/rr0r�
�stdin.read({})�rU�ranger7r�endswith�readr"�format�r�source�expected�
read_countrRrY�bs       r�test_partial_readsz(WindowsConsoleIOTests.test_partial_reads�sI��$�*�*�;�7�7��%�,�,�W�5�5����2�,�,�		X�		X�J��h���2�2�2�
X�e��E�6�*�*�*��� �/�/�%�0�0� ��
�
�:�.�.�A��a�K�F�!�/�/�%�0�0� �� � ���3C�3J�3J�:�3V�3V�W�W�W�
X�
X�
X�
X�
X�
X�
X�
X�
X�
X�
X����
X�
X�
X�
X��		X�		X��BC�C 	�#C 	c	���d�d��}d�d��}tdd��D]�}tddd�	��5}t||��d
}|�d��s/|�|��}||z
}|�d���/|�||d�|����ddd��n#1swxYwY��dS)
Nu
􁿿􁀁
rPrbrrcr*r/rr0rrdrerfrks       r�test_partial_surrogate_readsz2WindowsConsoleIOTests.test_partial_surrogate_reads�sI��
,�2�2�;�?�?��-�4�4�W�=�=����2�,�,�		X�		X�J��h���2�2�2�
X�e��E�6�*�*�*��� �/�/�%�0�0� ��
�
�:�.�.�A��a�K�F�!�/�/�%�0�0� �� � ���3C�3J�3J�:�3V�3V�W�W�W�
X�
X�
X�
X�
X�
X�
X�
X�
X�
X�
X����
X�
X�
X�
X��		X�		Xrqc��tddd���5}d�d��}d�d��}t||��|�d	��|���}}|�|dd	�|��|�|d	d�|��ddd��dS#1swxYwYdS)
Nr*r/rr0uÄ
rP�Ärbr)r7rUrri�readallr")rrRrlrm�aros      r�test_ctrl_zz!WindowsConsoleIOTests.test_ctrl_z�s��
�(�D�A�
.�
.�
.�	.�%�#�*�*�;�7�7�F��}�}�W�-�-�H���v�&�&�&��:�:�a�=�=�%�-�-�/�/�q�A����X�a��c�]�A�.�.�.����X�a�b�b�\�1�-�-�-�
	.�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.�	.����	.�	.�	.�	.�	.�	.s�B C�C�C)�__name__�
__module__�__qualname__rr'r:�unittest�skipIfr3r6r?rJrMrZr^r`rprsrx�rrrrsH������;�;�;�
-�-�-�^���<�X�_�*�S�*�,�,�R�a�R�0�F�:�5�7�7���7�7��3�3�3�.�.�.�'�'�'�4�4�4��X�_�T�B�C�C�D�D�D�C�D�X�X�X�"�X�_�T�B�C�C�X�X�D�C�X�".�.�.�.�.rr�__main__)rrDr3rr|�test.supportr�platform�SkipTest�_testconsoler�_WindowsConsoleIOr�TestCaserry�mainr~rr�<module>r�s����
�	�	�	�	�	�	�	�
�
�
�
���������"�"�"�"�"�"��<�7���
�(�
�9�
:�
:�:�$�$�$�$�$�$�
���u.�u.�u.�u.�u.�H�-�u.�u.�u.�n�z����H�M�O�O�O�O�O��r