Your IP : 216.73.216.213


Current Path : /opt/alt/python38/lib64/python3.8/unittest/test/__pycache__/
Upload File :
Current File : //opt/alt/python38/lib64/python3.8/unittest/test/__pycache__/test_break.cpython-38.opt-2.pyc

U

i�f%�@s ddlZddlZddlZddlZddlZddlZddlZe�eed�d�e�	ej
dkd�Gdd�dej���Ze�eed�d�e�	ej
dkd�Gdd	�d	e���Z
e�eed�d�e�	ej
dkd�Gd
d�de���Ze�eed�d�e�	ej
dkd�Gdd
�d
e���Zedk�re��dS)�N�killzTest requires os.killZwin32zTest cannot run on Windowsc@s�eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�ZdS)�	TestBreakNcCs,t�tj�|_|jdk	r(t�tj|j�dS�N)�signal�	getsignal�SIGINT�_default_handler�int_handler��self�r�=/opt/alt/python38/lib64/python3.8/unittest/test/test_break.py�setUps
zTestBreak.setUpcCs(t�tj|j�t��tj_dtj_dSr)	rrr�weakref�WeakKeyDictionary�unittest�signals�_results�_interrupt_handlerr
rrr
�tearDownszTestBreak.tearDowncCsvt�tj�}t��|�t�tj�|�zt��}t�|tj�Wnt	k
r`|�
d�YnX|�tjj
j�dS)N�KeyboardInterrupt not handled)rrrr�installHandler�assertNotEqual�os�getpidr�KeyboardInterrupt�fail�
assertTruerrZcalled)r�default_handler�pidrrr
�testInstallHandlerszTestBreak.testInstallHandlerc	CsHt��}|�|tjj�t�|�z|�|tjj�W5t�|�XdSr)r�
TestResultZassertNotInrr�registerResult�removeResult�assertIn)r�resultrrr
�testRegisterResult(s
zTestBreak.testRegisterResultcs�t�tj�}t��}t��t�|���t�tj�|��fdd�}z||�Wntk
rp��	d�YnX��
|j�dS)Ncs,t��}t�|tj�d|_��|j�dS)NT)rrrrr�breakCaughtr�
shouldStop�r%rr
rr
�test;sz+TestBreak.testInterruptCaught.<locals>.testr)rrrrr!rr"rrrrr')rrr%r*rr
r
�testInterruptCaught2s
zTestBreak.testInterruptCaughtcs~t�tj�tjkr��d�t��}t��t�|��fdd�}z||�Wnt	k
rbYnX��
d���|j�dS)N�&test requires SIGINT to not be ignoredcsDt��}t�|tj�d|_��|j�t�|tj���d�dS)NT�#Second KeyboardInterrupt not raised)	rrrrrr'rr(rr)r
rr
r*Qsz+TestBreak.testSecondInterrupt.<locals>.testr-)
rrr�SIG_IGN�skipTestrr!rr"rrrr')rr%r*rr
r
�testSecondInterruptHs


zTestBreak.testSecondInterruptcCs�t��t��}t�|�t�tj�}t��}t�|�|�t�tj�|�t��}dd�}z||�Wntk
r�|�	d�YnX|�
|j�|�
|j�|�|j�dS)NcSst��}t�|tj�dSr)rrrrrr)rrr
r*osz&TestBreak.testTwoResults.<locals>.testr)
rrr!r"rrr�assertEqualrrrr(�assertFalse)rr%�new_handlerZresult2Zresult3r*rrr
�testTwoResultsbs 

zTestBreak.testTwoResultscs�t�tj�tjkr|�d�t��t�tj���fdd�}t�tj|�zt��}t�	|tj�Wnt
k
rxYnX|�d�dS)Nr,cs�||�dSrr)�frameZsignum�Zhandlerrr
r3�sz;TestBreak.testHandlerReplacedButCalled.<locals>.new_handlerz6replaced but delegated handler doesn't raise interrupt)rrrr.r/rrrrrrr)rr3rrr6r
�testHandlerReplacedButCalled}s
z&TestBreak.testHandlerReplacedButCalledcCs2tjt��d�}|�t���}|�|tjj�dS)N)�stream)	rZTextTestRunner�io�StringIO�runZ	TestSuiter$rr)rZrunnerr%rrr
�
testRunner�szTestBreak.testRunnercCs>t��}t�|�t�|�}~t��t��|�|��dSr)rr!r"r�ref�gcZcollectZassertIsNone)rr%r=rrr
�testWeakReferences�s

zTestBreak.testWeakReferencescCs~t��}t�|�t��|�t�|��|�t�t����zt��}t�	|t
j�Wntk
rlYnX|�|j
�dSr)rr!r"rrr#r2rrrrrrr()rr%rrrr
�testRemoveResult�s
zTestBreak.testRemoveResultc
s(t��t��t��t��t�tj�}G�fdd�dt��G����fdd�dtj�}|d�}|��|��jdd��ddd�fg�|��j	�g�|�|j
��|�t�tj�|�g�_g�_	|d�}|��|��jdd��ddd�fg�|��j	�g�|�|j
��|�t�tj�|�dS)	Ncs(eZdZgZgZdd�Z�fdd�ZdS)z5TestBreak.testMainInstallsHandler.<locals>.FakeRunnerc_s|j�||f�dSr)�initArgs�append)r�args�kwargsrrr
�__init__�sz>TestBreak.testMainInstallsHandler.<locals>.FakeRunner.__init__cs|j�|��Sr)�runArgsrB�rr*�r%rr
r;�sz9TestBreak.testMainInstallsHandler.<locals>.FakeRunner.runN)�__name__�
__module__�__qualname__rArFrEr;rrHrr
�
FakeRunner�srLcseZdZ����fdd�ZdS)z2TestBreak.testMainInstallsHandler.<locals>.Programcs4d|_�|_�|_||_d|_�|_�|_d|_dS)NF)�exit�	verbosity�failfast�
catchbreak�	tb_localsr<r*r%)rrP�rLrOr*rNrr
rE�sz;TestBreak.testMainInstallsHandler.<locals>.Program.__init__N)rIrJrKrErrRrr
�Program�srSFr)�bufferrNrOrQ�warningsT)�objectrrrrZTestProgramZrunTestsr1rArFr%r)rrrS�pr)rLrOr%r*rNr
�testMainInstallsHandler�s>	��z!TestBreak.testMainInstallsHandlercCsPt�tj�}t��t��|�t�tj�|�t��|�t�tj�|�dSr)rrrrr�
removeHandlerr1)rrrrr
�testRemoveHandler�szTestBreak.testRemoveHandlercsFt�tj��t��tj��fdd��}|���t�tj���dS)Ncs��t�tj���dSr)r1rrrr�rrrr
r*sz4TestBreak.testRemoveHandlerAsDecorator.<locals>.test)rrrrrrYrrGrr[r
�testRemoveHandlerAsDecorator�sz&TestBreak.testRemoveHandlerAsDecorator)rIrJrKr	rrr r&r+r0r4r7r<r?r@rXrZr\rrrr
rs


7
rc@seZdZejZdS)�TestBreakDefaultIntHandlerN)rIrJrKr�default_int_handlerr	rrrr
r]sr]c@seZdZejZdS)�TestBreakSignalIgnoredN)rIrJrKrr.r	rrrr
r_sr_c@seZdZejZdS)�TestBreakSignalDefaultN)rIrJrKr�SIG_DFLr	rrrr
r`sr`�__main__)r>r9r�sysrrrZ
skipUnless�hasattrZskipIf�platformZTestCaserr]r_r`rI�mainrrrr
�<module>s*{