File: //opt/cppython/lib/python3.8/test/__pycache__/test_typing.cpython-38.opt-2.pyc
U
.D�g0� �
@ s* d dl Z d dlZd dlZd dlZd dlZd dlmZmZmZm Z m
Z
d dlmZmZ d dl
mZmZ d dl
mZmZ d dl
mZmZmZ d dl
mZmZmZ d dl
mZmZmZ d d l
mZ d d
l
mZmZmZmZm Z d dl
m!Z!m"Z" d dl
m#Z# d d
l
m$Z$m%Z% d dl
m&Z&m'Z' d dl
m(Z( d dl
m)Z) d dl
m*Z*m+Z+ d dl
m,Z,m-Z-m.Z. d dl
m/Z/m0Z0 d dl1Z1d dl
Z
d dl2Z2d dl3Z3d dl4m5Z5 G dd� de�Z6G dd� d�Z7G dd� de7�Z8G dd� de7�Z9G dd� de8e9�Z:G dd � d e6�Z;G d!d"� d"e6�Z<G d#d$� d$e6�Z=G d%d&� d&e6�Z>G d'd(� d(e6�Z?G d)d*� d*e6�Z@G d+d,� d,e6�ZAed-eBeC�ZDed.�ZEG d/d0� d0eeDeEf �ZFG d1d2� d2eFeDeEf �ZGG d3d4� d4e �ZHe"G d5d6� d6eHe ��ZIG d7d8� d8�ZJG d9d:� d:e �ZKG d;d<� d<e �ZLe"G d=d>� d>eKeLe ��ZMe"G d?d@� d@e ��ZNG dAdB� dBeN�ZOG dCdD� dD�ZPG dEdF� dFe*�ZQe"G dGdH� dHe ��ZRG dIdJ� dJe6�ZSG dKdL� dLe6�ZTG dMdN� dNe6�ZUG dOdP� dPe6�ZVG dQdR� dRe6�ZWG dSdT� dTe6�ZXG dUdV� dVe6�ZYdWZZze[eZ� W n e\k
�r� dXZ]Y nX dYZ]d dZl4m^Z^m_Z_m`Z` d d[l
maZa G d\d]� d]�ZbG d^d_� d_eb�ZcG d`da� daec�ZdG dbdc� dcee �ZeG ddde� de�ZfG dfdg� dg�ZgG dhdi� die*�ZhG djdk� dke*�ZiG dldm� dme*�ZjG dndo� doe*�Zke+dpdqeBfg�ZlG drds� dse+�ZmG dtdu� duemel�ZnG dvdw� dwe+dXdx�ZoG dydz� dze5jb�Zpeaeq d{�d|d}�Zrzeres� ��td� W n$ euk
�rR Zv zW 5 dZv[vX Y nX e#ZwG d~d� d�ZxG d�d�� d�e6�ZyG d�d�� d�e�ZzG d�d�� d�e6�Z{G d�d�� d�e6�Z|G d�d�� d�e6�Z}G d�d�� d�e6�Z~G d�d�� d�e6�ZG d�d�� d�e6�Z�G d�d�� d�e6�Z�G d�d�� d�e6�Z�G d�d�� d�e6�Z�e�d�k�r&e� dS )�� N)�TestCase�main�
skipUnless�SkipTest�skip)�copy�deepcopy)�Any�NoReturn)�TypeVar�AnyStr)�T�KT�VT)�Union�Optional�Literal)�Tuple�List�MutableMapping)�Callable)�Generic�ClassVar�Final�final�Protocol)�cast�runtime_checkable)�get_type_hints)�
get_origin�get_args)�
no_type_check�no_type_check_decorator��Type)�NewType)�
NamedTuple� TypedDict)�IO�TextIO�BinaryIO)�Pattern�Match)�mod_generics_cachec @ s( e Zd Zddd�Zd dd�Zdd� ZdS )
�BaseTestCaseNc C s8 t ||�s4d||f }|d k r*|d| 7 }| �|��d S )Nz%r is not a subclass of %r� : %s��
issubclassZfailureException��self�clsZclass_or_tuple�msg�message� r7 �//opt/cppython/lib/python3.8/test/test_typing.py�assertIsSubclass# s
zBaseTestCase.assertIsSubclassc C s8 t ||�r4d||f }|d k r*|d| 7 }| �|��d S )Nz%r is a subclass of %rr/ r0 r2 r7 r7 r8 �assertNotIsSubclass* s
z BaseTestCase.assertNotIsSubclassc C s t jD ]
}|� qd S �N)�typingZ _cleanups�r3 �fr7 r7 r8 �clear_caches1 s
zBaseTestCase.clear_caches)N)N)�__name__�
__module__�__qualname__r9 r: r? r7 r7 r7 r8 r. ! s
r. c @ s e Zd ZdS )�EmployeeN�r@ rA rB r7 r7 r7 r8 rC 6 s rC c @ s e Zd ZdS )�ManagerNrD r7 r7 r7 r8 rE : s rE c @ s e Zd ZdS )�FounderNrD r7 r7 r7 r8 rF >