HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/test/__pycache__/test_threadedtempfile.cpython-310.pyc
o

�i~�@s�dZddlZddlmZddlZddlZddlZddlmZdZ	dZ
e��ZGdd�dej
�ZGd	d
�d
ej�ZedkrBe��dSdS)an
Create and delete FILES_PER_THREAD temp files (via tempfile.TemporaryFile)
in each of NUM_THREADS threads, recording the number of successes and
failures.  A failure is a bug in tempfile, and may be due to:

+ Trying to create more than one tempfile with the same name.
+ Trying to delete a tempfile that doesn't still exist.
+ Something we've never seen before.

By default, NUM_THREADS == 20 and FILES_PER_THREAD == 50.  This is enough to
create about 150 failures per run under Win98SE in 2.0, and runs pretty
quickly. Guido reports needing to boost FILES_PER_THREAD to 500 before
provoking a 2.0 failure under Linux.
�N)�threading_helper)�	print_exc��2c@seZdZdZdZdd�ZdS)�TempFileGreedyrcCsnt��|_t��tt�D]'}zt�d�}|�	�Wn|j
d7_
t|jd�Yq
|jd7_q
dS)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__rrrrrrrr src@seZdZdd�ZdS)�ThreadedTempFileTestcCs�dd�tt�D�}t�|tj��Wd�n1swYtdd�|D��}dd�|D�}dt|�|d�|�f}|�	|g|�|�	|tt
�dS)NcSsg|]}t��qSr)r)�.0rrrr�
<listcomp>4sz2ThreadedTempFileTest.test_main.<locals>.<listcomp>css�|]}|jVqdS)N)r�r�trrr�	<genexpr>7s�z1ThreadedTempFileTest.test_main.<locals>.<genexpr>cSs*g|]}|jrt|j�t|j����qSr)r�str�namer�getvaluer!rrrr 8s�zErrors: errors %d ok %d
%s�
)r�NUM_THREADSrZ
start_threadsr�set�sum�len�joinZassertEqualr)r�threads�okr�msgrrr�	test_main3s��
�zThreadedTempFileTest.test_mainN)rrrr0rrrrr2sr�__main__)�__doc__rZtest.supportrZunittestr	�	threading�	tracebackrr(r�Eventr�ThreadrZTestCaserr�mainrrrr�<module>s�