File: //usr/local/lib/python3.10/test/__pycache__/test_exceptions.cpython-310.pyc
o
�i�k � @ s\ d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlZd dlm Z d dl
mZmZm
Z
mZmZmZmZ d dlmZ d dlmZmZ d dlmZ d dlmZ G dd � d e�ZG d
d� de�ZG dd
� d
e�ZG dd� dej�Z dZ!G dd� dej�Z"G dd� dej�Z#G dd� dej�Z$G dd� dej�Z%G dd� dej�Z&e'dkr�e�(� dS dS )� N)�dedent)�captured_stderr�check_impl_detail�cpython_only�
gc_collect�
no_tracing�
script_helper�SuppressCrashReport)�
import_module)�TESTFN�unlink)�check_warnings)�supportc @ � e Zd Zdd� ZdS )�NaiveExceptionc C �
|| _ d S �N��x��selfr � r �1/usr/local/lib/python3.10/test/test_exceptions.py�__init__ �
zNaiveException.__init__N��__name__�
__module__�__qualname__r r r r r r � r c @ � e Zd ZdZdd� ZdS )�SlottedNaiveExceptionr c C r r r r r r r r r zSlottedNaiveException.__init__N)r r r � __slots__r r r r r r! � r! c @ r )�BrokenStrExceptionc C � t d��)Nzstr() is broken�� Exception�r r r r �__str__! � zBrokenStrException.__str__N)r r r r) r r r r r$ r r$ c @ sV e Zd Zdd� Zdd� Zdd� Zdd� Zd�dd�Zd
d� Zdd� Z e
dd� �Zdd� Ze
�ejdkd�dd� �Zdd� Zdd� Zdd� Zdd � Zd!d"� Zd#d$� Zd%d&� Zd'd(� Zed)d*� �Zd+d,� Zd-d.� Zd/d0� Zd1d2� Zd3d4� Z d5d6� Z!d7d8� Z"d9d:� Z#d;d<� Z$d=d>� Z%d?d@� Z&dAdB� Z'dCdD� Z(dEdF� Z)dGdH� Z*dIdJ� Z+dKdL� Z,dMdN� Z-dOdP� Z.dQdR� Z/e
�0dS�dTdU� �Z1dVdW� Z2dXdY� Z3dZd[� Z4ed\d]� �Z5e
d^d_� �Z6e
d`da� �Z7e
dbdc� �Z8ddde� Z9e
dfdg� �Z:e
dhdi� �Z;e
djdk� �Z<e
dldm� �Z=edndo� �Z>dpdq� Z?drds� Z@dtdu� ZAe
dvdw� �ZBdxdy� ZCdzd{� ZDd|d}� ZEe
�d~d�d�d�� �ZFd�d�� ZGd S )��ExceptionTestsc C s� | j ||d��L z|d�� |y" } z
t|�}W Y d }~nd }~ww z|d�� |y= } z
t|�}W Y d }~nd }~ww | �||� | �|j|� W d � d S 1 sVw Y d S )N)�exc�excnameZspam)�subTest�str�assertEqualr )r r, r- �errZbuf1Zbuf2r r r �raise_catch( s ����"�zExceptionTests.raise_catchc
C s | � td� | �tttd� | � td� ttddd�}|�� ttddd�}tj }z"zdd l
}|�d � W n ty> Y nw W |t_ |�� tt� n|t_ |�� tt� w | � t
d
� | �t
tdd� | � td� | �ttd
� | � td� g }| �t|jd� | � td� i }| �t|jd� | � td� | � td� | � td� zt}W n ty� Y nw | � td� d}td�D ]}||7 }q�| � td� | � td� | � td� ztd� W n ty� Y nw | � td� | � td� ztddd � W n
t�y Y nw | � d!� | � t!d"� | � t"d#� | �t"tj#d� | � t$d$� zg d% W n
t$�y6 Y nw | � t%d&� | �t%t&d'� | � t'd(� zdd }W n
t'�yZ Y nw | � t(d)� zdd }W n t(�yz } zW Y d }~nd }~ww | � t)d*� d S )+N�AttributeErrorZundefined_attribute�EOFError�w�utf-8��encoding�rr � �OSErrorzthis file does not exist�ImportErrorZundefined_module�
IndexError�
�KeyError�key�KeyboardInterrupt�MemoryError� NameError�
OverflowError� � �RuntimeError�RecursionError�SyntaxErrorz/
�IndentationError�TabErrorz"try:
1/0
1/0
finally:
pass
z<string>�execzTabError not raised�SystemError�
SystemExit� TypeErrorr �
ValueErrori �ZeroDivisionErrorr'