a
    äzel  ã                   @   s.   d dl Z G dd„ de jƒZedkr*e  ¡  dS )é    Nc                   @   sd   e Zd Zdd„ Zdd„ Zdd„ Zdd„ Zd	d
„ Zdd„ Zdd„ Z	dd„ Z
dd„ Zdd„ Zdd„ ZdS )ÚExceptionTestCasec                 C   s`   d}d}d}z*zt dƒ‚W n   d}Y n0 d}W d}nd}0 |  |¡ |  |¡ |  |¡ d S )NFznyaa!T)Ú	ExceptionÚ
assertTrueÚassertFalse©ÚselfÚ
hit_exceptÚhit_elseÚhit_finally© r   ú4/usr/lib/python3.9/test/test_exception_variations.pyÚtest_try_except_else_finally   s    


z.ExceptionTestCase.test_try_except_else_finallyc                 C   sX   d}d}d}z"zW n   d}Y n0 d}W d}nd}0 |   |¡ |  |¡ |  |¡ d S ©NFT©r   r   r   r   r   r   Ú)test_try_except_else_finally_no_exception   s    


z;ExceptionTestCase.test_try_except_else_finally_no_exceptionc                 C   sN   d}d}z&zt dƒ‚W n   d}Y n0 W d}nd}0 |  |¡ |  |¡ d S )NFzyarr!T©r   r   ©r   r   r
   r   r   r   Útest_try_except_finally)   s    
z)ExceptionTestCase.test_try_except_finallyc                 C   sF   d}d}zzW n   d}Y n0 W d}nd}0 |   |¡ |  |¡ d S r   r   r   r   r   r   Ú$test_try_except_finally_no_exception7   s    
z6ExceptionTestCase.test_try_except_finally_no_exceptionc                 C   s0   d}zt dƒ‚W n   d}Y n0 |  |¡ d S )NFzahoy!Tr   ©r   r   r   r   r   Útest_try_exceptE   s    
z!ExceptionTestCase.test_try_exceptc                 C   s(   d}zW n   d}Y n0 |   |¡ d S r   )r   r   r   r   r   Útest_try_except_no_exceptionO   s    
z.ExceptionTestCase.test_try_except_no_exceptionc                 C   sB   d}d}zt dƒ‚W n   d}Y n0 d}|  |¡ |  |¡ d S )NFzfoo!T©r   r   r   ©r   r   r	   r   r   r   Útest_try_except_elseY   s    

z&ExceptionTestCase.test_try_except_elsec                 C   s:   d}d}zW n   d}Y n0 d}|   |¡ |  |¡ d S r   r   r   r   r   r   Ú!test_try_except_else_no_exceptiong   s    

z3ExceptionTestCase.test_try_except_else_no_exceptionc                 C   s"   d}zW d}nd}0 |   |¡ d S r   )r   )r   r
   r   r   r   Útest_try_finally_no_exceptionu   s
    z/ExceptionTestCase.test_try_finally_no_exceptionc                 C   sl   d}d}d}z6z&zt dƒ‚W n   d}Y n0 W d}nd}0 W d}nd}0 |  |¡ |  |¡ |  |¡ d S )NFzinner exceptionTr   )r   r
   Úhit_inner_exceptZhit_inner_finallyr   r   r   Útest_nested   s    

zExceptionTestCase.test_nestedc                 C   s–   d}d}d}d}d}zDz&zW n   d}Y n0 d}t dƒ‚W n   d}Y n0 d}W d}nd}0 |  |¡ |  |¡ |  |¡ |  |¡ |  |¡ d S )NFTzouter exceptionr   )r   r	   r
   r   r   Zhit_inner_elser   r   r   Útest_nested_else’   s*    





z"ExceptionTestCase.test_nested_elseN)Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s   


r   Ú__main__)ZunittestZTestCaser   r    Úmainr   r   r   r   Ú<module>   s    ,