File: //usr/local/lib/python3.10/test/__pycache__/test_winconsoleio.cpython-310.pyc
o
�iG � @ s� d Z ddlZddlZddlZddlZddlZddlmZ ejdkr&e� d��ddl
mZ ejZ
G dd� dej�Zed krBe�� dS dS )
zTests for WindowsConsoleIO
� N)� os_helper�win32ztest only relevant on win32)�write_inputc @ s� e Zd Zdd� Zdd� Zdd� Ze�e� � dd� d kd
�dd� �Z
d
d� Zdd� Zdd� Z
dd� Ze�dd�dd� �Zdd� Ze�dd�dd� �Zdd� ZdS )�WindowsConsoleIOTestsc C s: | � tttj�� | �tttj�� | �tttj�� d S )N)�
assertTrue�
issubclass�ConIO�io� RawIOBase�assertFalse�BufferedIOBase�
TextIOBase��self� r �3/usr/local/lib/python3.10/test/test_winconsoleio.py�test_abc s zWindowsConsoleIOTests.test_abcc C sn | � tdtd� t�� �}|�� }| � tdt|� W d � n1 s#w Y ztd�}W n ty7 Y nw | �|�� � | �|� � � | �
d|�� � |�� |�� ztdd�}W n tyf Y nw | �|�� � | �|� � � | �
d|�� � |�� |�� ztdd�}W n
ty� Y d S w | �|�� � | �|� � � | �
d|�� � |�� |�� d S )Nznegative file descriptor���z&Cannot open (console|non-console file)r � �w� )ZassertRaisesRegex�
ValueErrorr �tempfile�
TemporaryFile�filenor �readabler �writable�assertEqual�close)r Ztmpfile�fd�fr r r �test_open_fd sN �
�����z"WindowsConsoleIOTests.test_open_fdc C s | � tttj� td�}| �|�� � | �|�� � | � |�
� � |�� |�� td�}| �|�� � | �|�� � | � |�
� � |�� |�� tdd�}| �|�� � | �|�� � | � |�
� � |�� |�� t�� d d� dk r�t
ddd d
�}| �|t� |�� d S d S )N�CON�CONIN$�CONOUT$r � ��
r i�U zC:/con�rbr �� buffering)ZassertRaisesr r �sys�
executabler r r r ZassertIsNotNoner r �getwindowsversion�open�assertIsInstance�r r r r r �test_open_nameG s0
�z$WindowsConsoleIOTests.test_open_nameNr �� r z+test does not work on Windows 7 and earlierc C sH t dddd�}| �|t� |�� t dddd�}| �|t� |�� d S )Nz
\\.\conin$r( r r) z//?/conout$�wb)r. r/ r r r0 r r r �test_conin_conout_namese s z-WindowsConsoleIOTests.test_conin_conout_namesc C s� t �� }| �tj|� tj�|d�}t|ddd��0}dt �
� d d� k r*dk r3n n| �|t� n| �
|t� W d � d S W d � d S 1 sLw Y d S )Nr$ r4 r r) r2 r% r&