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/idlelib/idle_test/__pycache__/test_run.cpython-310.pyc
o

�iG=�@sdZddlmZddlZddlZddlmZmZddlZddlm	Z	ddlZddl
mZde_Gdd	�d	ej
�ZGd
d�de�ZGdd
�d
�ZGdd�dej
�ZGdd�dej
�ZGdd�dej
�ZGdd�dej
�ZGdd�dej
�Zedkr�ejdd�dSdS)zTest run, coverage 54%.�)�runN)�captured_output�captured_stderr)�mock)�FuncTc@sVeZdZdd�ZdedfdedfdedffZd	d
�Ze	j
jeddd
�d�dd��Z
dS)�
ExceptionTestcCs�Gdd�dt�}|d�}|d�}z||�|y[z|�|yXt��(}tj�td��}dd�|_t��Wd�n1sBwYWd�n1sQwYYnwYnw|���	��
�}|�dt|��|�
d	|d
�|�
d|d�dS)
Nc@�eZdZdd�ZdS)zJExceptionTest.test_print_exception_unhashable.<locals>.UnhashableExceptioncS�dS)NT�)�self�otherr
r
�7/usr/local/lib/python3.10/idlelib/idle_test/test_run.py�__eq__�zQExceptionTest.test_print_exception_unhashable.<locals>.UnhashableException.__eq__N)�__name__�
__module__�__qualname__rr
r
r
r
�UnhashableExceptionsr�ex1�ex2�cleanup_tracebackcSs|S�Nr
��t�er
r
r
�<lambda> �z?ExceptionTest.test_print_exception_unhashable.<locals>.<lambda>�zUnhashableException: ex2�zUnhashableException: ex1�
)�	Exceptionrr�patch�objectrZside_effect�print_exception�getvalue�strip�
splitlines�assertEqual�len�assertIn)rrrr�output�ct�tbr
r
r
�test_print_exception_unhashables0

�������	z-ExceptionTest.test_print_exception_unhashable�1/0zdivision by zero
�abcz0name 'abc' is not defined. Did you mean: 'abs'?
zint.reelzAtype object 'int' has no attribute 'reel'. Did you mean: 'real'?
c	
Cs�|jD]M\}}}|j|d��:z
tt|dd��Wn'|y@t��\}}}t�|||�d}|j�d|��}|�	||�YnwWd�n1sKwYqdS)N)�code��evalrz: )
�data�subTestr2�compile�sys�exc_inforZget_message_linesrr')	rr0�exc�msg�typ�valr,�actual�expectr
r
r
�test_get_message0s�����zExceptionTest.test_get_messagercCsdd�S)NcS�dSrr
rr
r
r
r<rz(ExceptionTest.<lambda>.<locals>.<lambda>r
r
r
r
r
r<szExceptionTest.<lambda>�Znew_callablec
Cs<|j}|d|df|d|df|d|dff}d}|D]u\\}}}\}}	}
|j||fd��[z
tt|dd��WnH|y�z
tt|dd��Wn4|	y�t��}t��Wd�n1sewY|��}|�||�|�|
|�|d7}YnwYnwWd�n1s�wYq|�	|t
|��dS)Nr��)Zcodesr1r2)r3r4r2r5rrr#r$r)r'r()
rr�dZdata2Zsubtests�code1Zexc1Zmsg1�code2Zexc2Zmsg2r*r<r
r
r
�test_get_multiple_message;s2.
�������
z'ExceptionTest.test_get_multiple_messageN)rrrr-�ZeroDivisionError�	NameError�AttributeErrorr3r>rr!r"rrFr
r
r
r
rs��
�rc@�<eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�ScC�dt|�jS)Nz%s:str��typer�rr
r
r
�__str__T�z	S.__str__cCrL)Nz
%s:unicoderMrOr
r
r
�__unicode__VrQz
S.__unicode__cCr	�Nrr
rOr
r
r
�__len__Xrz	S.__len__cCstd�S)Nr/)�iterrOr
r
r
�__iter__Zsz
S.__iter__cGrL)Nz%s:itemrM�r�argsr
r
r
�__getitem__\rQz
S.__getitem__cGrL)Nz%s:slicerMrWr
r
r
�__getslice__^rQzS.__getslice__N)	rrrrPrRrTrVrYrZr
r
r
r
rKS�rKc@rJ)�	MockShellcCs|��dSr)�resetrOr
r
r
�__init__cszMockShell.__init__cGs|j�|�dSr)�written�appendrWr
r
r
�writeeszMockShell.writecCs
|j��Sr)�lines�poprOr
r
r
�readlineg�
zMockShell.readlinecCr?rr
rOr
r
r
�closeirzMockShell.closecCs
g|_dSr)r_rOr
r
r
r]krezMockShell.resetcCst|�ddd�|_dS)N���)�listrb)rrbr
r
r
�pushmszMockShell.pushN)	rrrr^rardrfr]rir
r
r
r
r\br[r\c@rJ)�StdInputFilesTestcCs�t�}t�|d�}|�|tj�|�|jd�|�|jd�|�	|j
�|�|jd�|�|j
�|�|���|�|���|�|���|�|���dS)N�stdin�utf-8�strictz<stdin>)r\r�StdInputFile�assertIsInstance�io�
TextIOBaser'�encoding�errors�assertIsNone�newlines�name�assertFalse�closed�
assertTrue�isatty�readable�writable�seekable�r�shell�fr
r
r
�	test_miscs�zStdInputFilesTest.test_misccCsdt�}t�|d�}|�t|j�|�t|j�|�t|jd�|�t|jd�|�t|j	dg�dS)Nrkr�x)
r\rrn�assertRaises�OSError�fileno�tell�seekra�
writelinesr~r
r
r
�test_unsupported�sz"StdInputFilesTest.test_unsupportedcCs
t�}t�|d�}|�gd��|�|��d�|�gd��|�|�d�d�|�gd��|�|�d�d�|�gd��|�|�d�d�|�|�d�d	�|�|�d
�d�|�dd
g�|�|�d�d�|�t|jd�|�t|jd�|�t|jdd�dS)Nrk��one
�two
r1�one
two
rg)r�r��three
r1rB�onrze
trz	wo
three
r�r�rr1��?�1rA)r\rrnrir'�readr��	TypeErrorr~r
r
r
�	test_read�s"zStdInputFilesTest.test_readcCsZt�}t�|d�}|�gd��|�|��d�|�|�d�d�|�|�d�d�|�dg�|�|��d�|�|��d�|�gd��|�|��d	�|�|��d
�|�gd��|�|�d�d
�|�|�d�d�|�|�d�d�|�|�d�d�|�ddg�|�|�d�d�|�t|jd�|�t|jd�|�t|jdd�dS)Nrk)r�r�r�zfour
r�rgr�r�r�)�one�twoZthreer�r�)r�r�r�rBr�rAr�
rrr1r�r�)	r\rrnrir'rdr�r��	readlinesr~r
r
r
�
test_readline�s,zStdInputFilesTest.test_readlinecCs*t�}t�|d�}|�gd��|�|��ddg�|�gd��|�|�d�ddg�|�gd��|�|�d�ddg�|�gd��|�|�d�ddg�|�gd��|�|�d�dg�|�gd��|�|�d�ddg�|�gd��|�t|jd	�|�t|jd
�|�t|jdd�dS)Nrkr�r�r�rgrr�r�r�rA)r\rrnrir'r�r�r�r~r
r
r
�test_readlines�s$z StdInputFilesTest.test_readlinescCstt�}t�|d�}|�gd��|�|j�|�|��d�|��|�|j�|�|��d�|�	t
|jd�dS)Nrkr�r�r�rA)r\rrnrirwrxr'rdrfr�r�r~r
r
r
�
test_close�szStdInputFilesTest.test_closeN)	rrrr�r�r�r�r�r�r
r
r
r
rjqs	rjc@rJ)�StdOutputFilesTestcCs�t�}t�|d�}|�|tj�|�|jd�|�|jd�|�	|j
�|�|jd�|�|j
�|�|���|�|���|�|���|�|���dS)N�stdoutrlrmz<stdout>)r\r�
StdOutputFilerorprqr'rrrsrtrurvrwrxryrzr{r|r}r~r
r
r
r��r�zStdOutputFilesTest.test_misccCsbt�}t�|d�}|�t|j�|�t|j�|�t|jd�|�t|jd�|�t|j	d�dS)Nr�r)
r\rr�r�r�r�r�r�r�rdr~r
r
r
r��sz#StdOutputFilesTest.test_unsupportedcCst�}t�|d�}|�d�|�|jdg�|��|�d�|�|jdg�|��|�td��|�|jdg�|�t|jdd�t	�|��|�
t|j�|�|jg�|�
t|jd�|�
t|jd�|�|jg�|�
t|jdd	�|�|jg�dS)
Nr��test�r�r��	tèś𝖙)r�r�r�test�{�spam�r\rr�rar'r_r]rKrN�strr�r�r~r
r
r
�
test_write�s&

zStdOutputFilesTest.test_writecCs�t�}t�|ddd�}|�d�|�|jdg�|��|�td��|�|jdg�|�t|jdd�t	�|��|�
t|j�|�|jg�|�
t|jd�|�
t|jd�|�|jg�|�
t|jd	d
�|�|jg�dS)N�stderrziso-8859-15�backslashreplaceutèś𝖙¤)utè\u015b\U0001d599\xa4r�rr�r�r�r�r�r~r
r
r
�test_write_stderr_nonencodables 
z1StdOutputFilesTest.test_write_stderr_nonencodablecCsTt�}t�|d�}|�g�|�|jg�|��|�ddg�|�|jddg�|��|�ddg�|�|jdd	g�|��|�td
�g�|�|jdg�|�t|jdd�t	�|��|�
t|j�|�|jg�|�
t|jd
�|�|jg�|�
t|jdg�|�
t|jd
g�|�|jg�|�
t|jgg�|�|jg�dS)Nr�r�r�)r�r�)r�r��onè
�twò)r�r�)r�r��tèst)r�r�rr�r�)r\rr�r�r'r_r]rKrNr�r�r�r~r
r
r
�test_writeliness8
��z"StdOutputFilesTest.test_writelinescCsxt�}t�|d�}|�|j�|�d�|��|�|j�|�t	|jd�|�
|jdg�|��|�t|jd�dS)Nr�r�r�r�rA)
r\rr�rwrxrarfryr��
ValueErrorr'r_r�r~r
r
r
r�:s
zStdOutputFilesTest.test_closeN)	rrrr�r�r�r�r�r�r
r
r
r
r��s	r�c@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�RecursionLimitTestcCsLt��|�tj�tj}|jt|dd�|�t|dd�|�t|d�dS)N�d)�limiti�r)	r�install_recursionlimit_wrappers�
addCleanup�!uninstall_recursionlimit_wrappersr6�setrecursionlimitr�r�r�)rr�r
r
r
� test_bad_setrecursionlimit_callsJsz3RecursionLimitTest.test_bad_setrecursionlimit_callscCsTt��|�tj�t��}|�tj|�t�|d�t��}|�||d�dSrS)rr�r�r�r6�getrecursionlimitr�r'�rZ
orig_reclimitZnew_reclimitr
r
r
�test_roundtripRsz!RecursionLimitTest.test_roundtripcCs4t��}t��|�tj�t��}|�||�dSr)r6r�rr�r�r�r'r�r
r
r
�&test_default_recursion_limit_preserved_s
z9RecursionLimitTest.test_default_recursion_limit_preservedcCsFdd�}t�|d�|�|jd�d|_t�|d�|�|jd�dS)NcSr	)Z	docstringNr
r
r
r
r
�funchrz,RecursionLimitTest.test_fixdoc.<locals>.funcZmorezdocstring

more)rZfixdocr'�__doc__)rr�r
r
r
�test_fixdocfszRecursionLimitTest.test_fixdocN)rrrr�r�r�r�r
r
r
r
r�Gs

r�c@r)�HandleErrorTestc
Cs,|j}td���}tjdtd��e}zt�ty#tj�ddd�Ynw|tj	d�dt_	||�
�d�zt�tyGtj�ddd�Ynw|tjd�dt_|�
�}|�
d|�|�
d|�|�
d	|�||jd
�Wd�n1swwYWd�dSWd�dS1s�wYdS)N�
__stderr__z!idlelib.run.thread.interrupt_mainr@r/Z123TFr1�
IndexErrorrB)r'rrr!r�EOFErrorrZMyRPCServerZhandle_errorZexit_nowr$r�Zquittingr)Zcalled)r�eq�errr�r9r
r
r
�test_fatal_errorrs8
����P�z HandleErrorTest.test_fatal_errorN)rrrr�r
r
r
r
r�psr�c@s,eZdZedd��Zedd��Zdd�ZdS)�ExecRuncodeTestcCsH|�ttdtj�t�|_|jt_t��}tdd�|j_	t�
|�|_dS)Nr#F)�result)ZaddClassCleanup�setattrrr#r�prtrZMockZconsoleZgetvarZ	Executive�ex)�clsZmockrpcr
r
r
�
setUpClass�szExecRuncodeTest.setUpClasscCstjtjksJ�dSr)r6�
excepthook�__excepthook__)r�r
r
r
�
tearDownClass�szExecRuncodeTest.tearDownClasscCs�|j}|�d�|�|jdt�|�ttdtj�dd�t_	|�d�|�|j
jdt�dd�t_	|�d�|j\}}}|�|t�|�
t|jt��dS)Nr.rr�cSs
t�|�Sr)rr#)rrr,r
r
r
r�s
z1ExecRuncodeTest.test_exceptions.<locals>.<lambda>cSr?rr
r
r
r
r
r�r)r�ZruncodeZassertIsZ
user_exc_inforGr�r�r6r�r�r�rXr�ry�
isinstance�__context__)rr�rrr,r
r
r
�test_exceptions�s




zExecRuncodeTest.test_exceptionsN)rrr�classmethodr�r�r�r
r
r
r
r��s

r��__main__rB)�	verbosity)r�Zidlelibrrpr6Ztest.supportrrZunittestrZidlelib.idle_test.mock_idlerZtestingZTestCaserr�rKr\rjr�r�r�r�r�mainr
r
r
r
�<module>s*Dgo) �