File: //usr/local/lib/python3.10/test/test_asyncio/__pycache__/test_waitfor.cpython-310.opt-1.pyc
o
�i�! � @ s\ d dl Z d dlZd dlZdd� ZdZG dd� d�ZG dd� dej�Zed kr,e� � dS dS )
� Nc C s t �d � d S �N)�asyncioZset_event_loop_policy� r r �;/usr/local/lib/python3.10/test/test_asyncio/test_waitfor.py�tearDownModule s r g-C��6?c @ s$ e Zd ZdZdZdd� Zdd� ZdS )�SlowTaskz? Task will run for this defined time, ignoring cancel requests 皙�����?c C s
d| _ d S )NF)�exited��selfr r r �__init__ s
zSlowTask.__init__c � s^ �t �� | j } |t �� }|dkrnz
t�|�I d H W n
tjy( Y nw q d| _d S )NTr )�time� monotonic�TASK_TIMEOUTr �sleep�CancelledErrorr )r ZexitatZtosleepr r r �run s ���
zSlowTask.runN)�__name__�
__module__�__qualname__�__doc__r r r r r r r r s
r c @ s� e Zd Zdd� Zdd� Zdd� Zdd� Zd d
� Zdd� Zd
d� Z dd� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd� Zdd � Zd!S )"�AsyncioWaitForTestc � s^ �t � }t�t�|�� |jd ��}t�d�I d H |�� t�|h�I d H | � |j
� d S )N� r )r r �create_task�wait_forr r r �cancel�wait�
assertTruer )r �tZwaitfortaskr r r �test_asyncio_wait_for_cancelled) s ��z2AsyncioWaitForTest.test_asyncio_wait_for_cancelledc � sN �t � }zt�|�� |jd �I d H W n
tjy Y nw | �|j� d S )Nr )r r r r r �TimeoutErrorr r )r r r r r �test_asyncio_wait_for_timeout4 s � �z0AsyncioWaitForTest.test_asyncio_wait_for_timeoutc � sl �t �� }|�� }|�d� |�� }t �|d�I d H }|�� }| �|d� | �|�� � | � || d� d S )N�doner 皙�����?)
r �get_running_loop�
create_future�
set_resultr
r �assertEqualr r"