File: //usr/local/lib/python3.10/test/__pycache__/test_threadedtempfile.cpython-310.opt-2.pyc
o
�i~ � @ s� d dl Z d dlmZ d dlZd dlZd dlZd dlmZ dZdZ e�
� ZG dd� dej�Z
G dd � d ej�Zed
krAe�� dS dS )� N)�threading_helper)� print_exc� �2 c @ s e Zd ZdZdZdd� ZdS )�TempFileGreedyr c C sn t �� | _t�� tt�D ]'}zt�d�}|� � W n | j
d7 _
t| jd� Y q
| jd7 _q
d S )Nzw+b� )�file)
�io�StringIO�errors�
startEvent�wait�range�FILES_PER_THREAD�tempfile�
TemporaryFile�close�error_countr �ok_count)�self�i�f� r �7/usr/local/lib/python3.10/test/test_threadedtempfile.py�run$ s
�zTempFileGreedy.runN)�__name__�
__module__�__qualname__r r r r r r r r s r c @ s e Zd Zdd� ZdS )�ThreadedTempFileTestc C s� dd� t t�D �}t�|tj�� W d � n1 sw Y tdd� |D ��}dd� |D �}dt|�|d�|�f }| � |g |� | � |tt
� d S )Nc S s g | ]}t � �qS r )r )�.0r r r r �
<listcomp>4 s z2ThreadedTempFileTest.test_main.<locals>.<listcomp>c s s � | ]}|j V qd S )N)r �r �tr r r � <genexpr>7 s � z1ThreadedTempFileTest.test_main.<locals>.<genexpr>c S s* g | ]}|j rt|j�t|j�� � �qS r )r �str�namer �getvaluer! r r r r 8 s �zErrors: errors %d ok %d
%s�
)r �NUM_THREADSr Z
start_threadsr �set�sum�len�joinZassertEqualr )r �threads�okr �msgr r r � test_main3 s ��
�zThreadedTempFileTest.test_mainN)r r r r0 r r r r r 2 s r �__main__)r Ztest.supportr Zunittestr � threading� tracebackr r( r �Eventr �Threadr ZTestCaser r �mainr r r r �<module> s �