File: //usr/local/lib/python3.10/test/__pycache__/_test_eintr.cpython-310.opt-2.pyc
o
�i�F � @ s� d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl
Z
d dlZd dlm
Z
d dlmZ d dlmZ e jdd� �Ze�eed�d�G d d
� d
ej��Ze�eed�d�G dd� de��Ze�eed�d�G d
d� de��Ze�eed�d�G dd� de��Ze�eed�d�e�eed�d�G dd� de���Ze�eed�d�G dd� de��ZG dd� de�Zedkr�e�� dS dS )� N)�support)� os_helper)�
socket_helperc c sJ � | � z| V W n | � � � W d � d S 1 sw Y d S �N)�kill)�proc� r �-/usr/local/lib/python3.10/test/_test_eintr.py�
kill_on_error s �
�"�r
� setitimerzrequires setitimer()c @ sF e Zd Z dZdZdZdd� Zdd� Zedd� �Z d d
� Z
dd� Zd
S )�
EINTRBaseTestg�������?g�������?c C s | j d7 _ d S �N� )�signals)�self�signum�framer r r �
sighandler3 � zEINTRBaseTest.sighandlerc C sB d| _ t�tj| j�| _t�tj| j| j� t j
ddtjd� d S )Nr iX T)�exit�file)
r �signal�SIGALRMr �orig_handlerr �ITIMER_REAL�signal_delay�
signal_period�faulthandlerZdump_traceback_later�sys�
__stderr__�r r r r �setUp6 s �
�zEINTRBaseTest.setUpc C s t �t jdd� d S �Nr )r r r r r r r �
stop_alarmA s zEINTRBaseTest.stop_alarmc C s$ | � � t�tj| j� t�� d S r )r# r r r r Zcancel_dump_traceback_laterr r r r �tearDownE s zEINTRBaseTest.tearDownc O s t jdf| }tj|fi |��S )Nz-c)r �
executable�
subprocess�Popen)r �args�kwZcmd_argsr r r r&