shell bypass 403
o
ab�3 � @ s� d Z ddlmZ ddlZddlZddlZdd� ZG dd� d�ZG dd � d ej�Z G d
d� dej�Z
G dd
� d
ej�ZG dd� dej�ZG dd� dej�Z
G dd� dej�Zedkr_e�� dS dS )zTests for the raise statement.� )�supportNc C s zt � � t�� d Y S )N� )�OSError�sys�exc_info� r r �8/usr/local/python-3.10/lib/python3.10/test/test_raise.py�get_tb s r c @ � e Zd Zdd� Zdd� ZdS )�Contextc C s | S �Nr ��selfr r r � __enter__ � zContext.__enter__c C s dS )NTr )r �exc_type� exc_value�exc_tbr r r �__exit__ r zContext.__exit__N��__name__�
__module__�__qualname__r r r r r r r � r c @ �l e Zd Zdd� Zdd� Zdd� Zdd� Zd d
� Zdd� Zd
d� Z dd� Z
dd� Zdd� Zdd� Z
dd� ZdS )� TestRaisec
C s: z� t y } z| �dt|�� W Y d }~d S d }~ww )NzNo active exception)�RuntimeError�assertIn�str�fail�r �er r r �test_invalid_reraise s ��zTestRaise.test_invalid_reraisec
C sZ zzt � � t y } z|}� d }~ww t y, } z
| �||� W Y d }~d S d }~ww r )�
IndexError�assertIsr )r r! Zexc1Zexc2r r r �test_reraise# s ����zTestRaise.test_reraisec C � dd� }| � t|� d S )Nc S s, zt d�� ztd�� ty Y � w �N�fooZcaught�� TypeError�KeyErrorr r r r �reraise0 s �z.TestRaise.test_except_reraise.<locals>.reraise��assertRaisesr* �r r, r r r �test_except_reraise/ s zTestRaise.test_except_reraisec C r&