File: //lib64/python3.6/test/__pycache__/test_selectors.cpython-36.pyc
3
\�B � @ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlmZ d dl m
Z
d dlZd dlZd dl
Z
d dl mZ yd dlZW n ek
r� dZY nX eed�r�ejZnejejd fdd�Zdd� ZG d d
� d
ej�ZG dd� d�ZG d
d� de�ZG dd� de�Zejeed�d�G dd� dee��Zejeed�d�G dd� dee��Zejeed�d�G dd� dee��Zejeed�d�G dd � d ee��Zd!d"� Z e!d#k�r�e � dS )$� N)�support)�sleep)� monotonic�
socketpairc C s� t j | ||���}|jtjdf� |j� t j | ||�}yD|j|j� � |j� }x(|j� \}}||krl||fS |j� qPW W n t k
r� |j� � Y nX W d Q R X d S )Nr )
�socketZbindr ZHOSTZlistenZconnectZgetsocknameZaccept�close�OSError)Zfamily�type�proto�l�cZcaddr�aZaddr� r �&/usr/lib64/python3.6/test_selectors.pyr s c C s. g }x$| D ]\}}||@ r
|j |j� q
W |S )N)�append�fileobj)�ready�flag�match�key�eventsr r r �find_ready_matching* s
r c @ s� e Zd Zdd� Zdd� Zdd� Zdd� Zeje j
d kd
�dd� �Zd
d� Zdd� Z
dd� Zdd� Zdd� Zdd� Zdd� Zdd� Zdd� Zejejdkd �d!d"� �Zd#d$� Zejeed%�d&�d'd(� �Zejeed%�d&�d)d*� �Zd+S ),�BaseSelectorTestCasec C s* t � \}}| j|j� | j|j� ||fS )N)r �
addCleanupr )�self�rd�wrr r r �make_socketpair4 s
z$BaseSelectorTestCase.make_socketpairc C s� | j � }| j|j� | j� \}}|j|tjd�}| j|tj� | j |j
|� | j |j|j� � | j |j
tj� | j |jd� | jt|jdd� | jt|jdtj� | jt|j|tj� | jt|j|j� tj� d S )N�datar i?B �
i����)�SELECTORr r r �register� selectors�
EVENT_READZassertIsInstance�SelectorKey�assertEqualr �fd�filenor r �assertRaises�
ValueError�KeyError)r �sr r r r r r �
test_register: s z"BaseSelectorTestCase.test_registerc C s\ | j � }| j|j� | j� \}}|j|tj� |j|� | jt |jd� | jt |j|� d S )Ni?B )
r r r r r! r"