shell bypass 403
o
ab�= � @ s� d dl Z d dlmZ d dlZd dlmZ d dlmZm Z d dl
Z
d dlZd dlm
Z
G dd� d�ZG dd � d �ZG d
d� de j�ZedkrKe �� dS dS )
� N)�WeakSet)�
UserString)�Set�
MutableSet)�supportc @ s e Zd ZdS )�FooN)�__name__�
__module__�__qualname__� r r �:/usr/local/python-3.10/lib/python3.10/test/test_weakset.pyr s r c @ � e Zd Zdd� ZdS )�RefCyclec C s
| | _ d S �N)�cycle��selfr r r �__init__ s
zRefCycle.__init__N)r r r
r r r r r r � r c @ s| e Zd Zdd� Zdd� Zdd� Zdd� Zd d
� Zdd� Zd
d� Z dd� Z
dd� Zdd� Zdd� Z
dd� Zdd� Zdd� Zdd� Zdd � Zd!d"� Zd#d$� Zd%d&� Zd'd(� Zd)d*� Zd+d,� Zd-d.� Zd/d0� Zd1d2� Zd3d4� Zd5d6� Zd7d8� Zd9d:� Zd;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+dSdT� Z,dUdV� Z-dWdX� Z.dYdZ� Z/d[d\� Z0d]S )^�TestWeakSetc C s� dd� dD �| _ dd� dD �| _dd� dD �| _dd� d D �| _d
d� dD �| _t| j�| _t| j�| _t| j�| _dd� t j
D �| _t| j �| _t
�| j �| _td
�| _t| jg�| _d S )Nc S � g | ]}t |��qS r ��ustr��.0�cr r r �
<listcomp> � z%TestWeakSet.setUp.<locals>.<listcomp>��a�br c S r r r r r r r r r )�x�y�zc S r r r r r r r r r �abc S r r r r r r r r r Zabcdec S r r r r r r r r r �defc S r r r r r r r r r �F)�items�items2Zab_itemsZabcde_itemsZ def_itemsr �
ab_weakset�
abcde_weakset�def_weakset�string�
ascii_letters�letters�s�dict�fromkeys�dr �obj�fsr r r r �setUp s
zTestWeakSet.setUpc C s@ t t�}t t�D ]}|dks|�d�rq| �||d| � qd S )NZ
test_c_api�_zWeakSet missing method )�dirr �set�
startswith�assertIn)r Zweaksetmethods�methodr r r �test_methods% s ��zTestWeakSet.test_methodsc C s | � ttg d� d S )N� )�assertRaises� TypeErrorr r r r r �test_new_or_init- � zTestWeakSet.test_new_or_initc C sL | � t| j�t| j�� | � t| j�d� | `t�� | � t| j�d� d S )N� r )�assertEqual�lenr/ r2 r4 r3 r �
gc_collectr r r r �test_len0 s
zTestWeakSet.test_lenc C sd | j D ]}| �|| jv || jv � q| �d| j� | �| j| j� | `t� � | �t
d�| j� d S )NrB r&