403Webshell
Server IP : 217.160.0.135  /  Your IP : 216.73.217.85
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1074145052 ( 1074145052)
PHP Version : 8.3.32
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /lib/python3/dist-packages/traitlets/tests/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /lib/python3/dist-packages/traitlets/tests/__pycache__/test_traitlets.cpython-311.pyc
�

�Uc�4����dZddlZddlZddlmZddlZddlmZmZm	Z	m
Z
mZmZm
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1mZm2Z2ddl3m4Z4ddl5m6Z6d�Z7Gd	�d
e��Z8Gd�de��Z9Gd
�de��Z:Gd�de��Z;Gd�de��Z<Gd�de��Z=Gd�de��Z>Gd�de��Z?Gd�de��Z@Gd�de��ZAGd�de��ZBGd�d e��ZCGd!�d"e��ZDGd#�d$eC��ZEGd%�d&e��ZFGd'�d(eC��ZGGd)�d*e��ZHGd+�d,eC��ZIGd-�d.e��ZJGd/�d0eC��ZKGd1�d2e��ZLGd3�d4eC��ZMGd5�d6e��ZNGd7�d8eC��ZOGd9�d:e��ZPGd;�d<eO��ZQGd=�d>e��ZRGd?�d@eC��ZSGdA�dBe��ZTGdC�dDeC��ZUGdE�dFe��ZVGdG�dHeC��ZWGdI�dJe��ZXGdK�dLeC��ZYGdM�dNe��ZZGdO�dPeY��Z[GdQ�dRe��Z\GdS�dTeS��Z]GdU�dVe��Z^GdW�dXeC��Z_GdY�dZe��Z`Gd[�d\eC��ZaGd]�d^e��ZbGd_�d`eC��ZcGda�dbe��ZdGdc�ddeC��ZeGde�dfe��ZfGdg�dheC��ZgGdi�dje��ZhGdk�dleC��ZiGdm�dne��ZjGdo�dpeC��ZkGdq�dre��ZlGds�dteC��ZmGdu�dve��ZnGdw�dxeC��ZoGdy�dze��ZpGd{�d|eC��ZqGd}�d~e��ZrGd�d�eC��ZsGd��d���ZtGd��d�e��ZuGd��d�eC��ZvGd��d�e��ZwGd��d�eC��ZxGd��d�e��ZyGd��d�eC��ZzGd��d�e��Z{Gd��d�eC��Z|Gd��d�e��Z}Gd��d�eC��Z~Gd��d�e��ZGd��d�eC��Z�Gd��d�e��Z�Gd��d�eC��Z�ej���d�ee(e#eee+f��d����Z�ej���d�egfe(d�fe#e���feifedfe+d�ff��d����Z�ej���d�egfe(d�fe#e���ff��d����Z�Gd��d�e��Z�Gd��d�eC��Z�Gd��d�e��Z�d��Z�Gd��d�e��Z�Gd��d�eC��Z�Gd��d�e��Z�Gd��d�eC��Z�Gd��d�e��Z�Gd��d�eC��Z�Gd��d�e��Z�Gd��d�eC��Z�d��Z�Gd��d�e��Z�Gd��d�e��Z�Gd„d�e��Z�GdĄd�e��Z�dƄZ�dDŽZ�GdȄd�e��Z�Gdʄd�e��Z�Gd̄d�e��Z�d΄Z�Gdτd�e��Z�dфZ�Gd҄d�e��Z�GdԄd�e��Z�Gdքd�e��Z�Gd؄d�e��Z�Gdڄdۦ�Z�Gd܄d�e���Z�Gdބd�eC��Z�Gd�d�eC��Z�Gd�d�eC��Z�Gd�d�eC��Z�Gd�d�e��Z�d�Z�d�Z�Gd�d�e��Z�Gd�d�e���Z�d�Z�Gd�d�e��Z�Gd�d�e���Z�d�Z�Gd�d�e���Z�d��Z�Gd��d�e���Z�d��Z�d��Z�d��Z�d��Z�d��Z�d��Z�d��Z��d�Z��d�Z��d�Z��d�Z�ej����dg�d����d���Z�ej����dg�d����d���Z�ej����dg�d����d	���Z�ej����dg�d����d
���Z�ej����d�de�f�d�d
�de�f�dg���d���Z�ej����d�de�f�d�d�d�dg���d���Z�ej����d�de�f�d�d�d�d�dg���d���Z�ej����d�d�d�d�d�d�d�de�f�dg���d���Z�ej����d�dif�d e&f�d!d�d"if�d#�d$�d%if�de&f�dg���d&���Z�ej����d�d'gf�d(g�d)�f�d �dg�d �dgf�d*gdfg���d+���Z�ej����d,g�d-�g�d.�e��f�dge�e��f�d �dg�d �dge+��f�d*gdge+�d/��0��f�d*g�d*ge+�d1��0��fg���d2���Z�ej����d�d'e���f�d(h�d3�f�d4h�d3�f�d �dg�d �dhf�d*gdfg���d5���Z�ej����d,g�d-�h�d6�e��f�dge�e��f�d �dg�d �dhe+��f�d*gdhe+�d/��0��fg���d7���Z�ej����d�d8�d9�d:�d;�d �dg�d<f�d*gdfg���d=���Z�ej����d>g�d-��d.e��e��e��gf�dge�e��gf�d �dg�d<e+��gf�d*g�d?e+�d1��0��gf�d*g�d@e+�d/��0��gfg���dA���Z�ej����d�dB�dC�dDe&f�dE�dg���dF���Z�ej����d�dG�dH�dIe�f�dJe�f�dg���dK���Z�ej����d�d'gf�dLg���dM���Z�ej����d�d�dNg���dO���Z�ej����dP�d'g�d1f�di�d1f�d*e&�d1f�dQg���dR���ZאdS�Z�dS(TzTests for traitlets.traitlets.�N)�TestCase)-�All�Any�BaseDescriptor�Bool�Bytes�Callable�CBytes�CFloat�CInt�CLong�Complex�CRegExp�CUnicode�Dict�DottedObjectName�Enum�Float�ForwardDeclaredInstance�ForwardDeclaredType�HasDescriptors�	HasTraits�Instance�Int�Integer�List�Long�
MetaHasTraits�
ObjectName�Set�
TCPAddress�This�
TraitError�	TraitType�Tuple�Type�	Undefined�Unicode�Union�default�directional_link�link�observe�observe_compat�	traitlets�validate��cast_unicode�)�expected_warningsc�@�d}tt||����S)N)�name�old�new�owner�type)�dict�zip)�ordered_values�change_namess  �@/usr/lib/python3/dist-packages/traitlets/tests/test_traitlets.py�change_dictr@Cs��:�L���L�.�1�1�2�2�2�c��eZdZd�ZdS)�
HasTraitsStubc�n�|d|_|d|_|d|_|d|_dS)Nr6r7r8r:)�_notify_name�_notify_old�_notify_new�_notify_type��self�changes  r?�
notify_changezHasTraitsStub.notify_changeNs8��"�6�N���!�%�=���!�%�=���"�6�N����rAN)�__name__�
__module__�__qualname__rL�rAr?rCrCMs#������+�+�+�+�+rArCc��eZdZdZdS)�CrossValidationStubFN)rMrNrO�_cross_validation_lockrPrAr?rRrRUs������"���rArRc��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�ZdS)�
TestTraitTypec�`�Gd�dt��}|��}|jtusJ�dS)Nc��eZdZeZdS)�+TestTraitType.test_get_undefined.<locals>.AN�rMrNrOr$�arPrAr?�ArX`��������A�A�ArAr[)rrZr'�rJr[rZs   r?�test_get_undefinedz TestTraitType.test_get_undefined_sR��	�	�	�	�	�	�	�	�	�
�A�C�C���s�i������rAc�0�Gd�dt��}|��}d|_|�|jd��|�|jd��|�|jt
��|�|jd��dS)Nc��eZdZeZdS)�!TestTraitType.test_set.<locals>.ANrYrPrAr?r[ragr\rAr[�
rZ)rCrZ�assertEqualrErFr'rGr]s   r?�test_setzTestTraitType.test_setfs���	�	�	�	�	�
�	�	�	�
�A�C�C����������b�!�!�!�������-�-�-������	�2�2�2�������+�+�+�+�+rAc���Gd�dt���G�fd�dt��}|��}d|_|�|jd��dS)Nc��eZdZd�ZdS)�)TestTraitType.test_validate.<locals>.MyTTc��dS�N���rP)rJ�inst�values   r?r0z2TestTraitType.test_validate.<locals>.MyTT.validates����rrAN�rMrNrOr0rPrAr?�MyTTrgr�#������
�
�
�
�
rAroc���eZdZ�ZdS)�&TestTraitType.test_validate.<locals>.AN�rMrNrO�tt)ros�r?r[rrvs��������B�B�BrAr[rbrj)r$rCrtrc)rJr[rZros   @r?�
test_validatezTestTraitType.test_validateqs����	�	�	�	�	�9�	�	�	�	�	�	�	�	�	�	�
�	�	�	�
�A�C�C����������r�"�"�"�"�"rAc� ��Gd�dt���G�fd�dt��}|��}|�|jd��G�fd�dt��}|�t
t|��d��dS)	Nc��eZdZd�ZdS)�4TestTraitType.test_default_validate.<locals>.MyIntTTc�`�t|t��r|S|�||��dS�N)�
isinstance�int�error)rJ�objrls   r?r0z=TestTraitType.test_default_validate.<locals>.MyIntTT.validates3���e�S�)�)�!� �L��
�
�3��&�&�&�&�&rANrnrPrAr?�MyIntTTrx~s#������
'�
'�
'�
'�
'rArc�&��eZdZ�d��ZdS)�.TestTraitType.test_default_validate.<locals>.ArbNrs�rs�r?r[r��s������������B�B�BrAr[rbc�&��eZdZ�d��ZdS)�.TestTraitType.test_default_validate.<locals>.B�bad defaultNrsr�s�r?�Br��s����������'�'�B�B�BrAr�rt)r$rrcrt�assertRaisesr#�getattr)rJr[rZr�rs    @r?�test_default_validatez#TestTraitType.test_default_validate}s����	'�	'�	'�	'�	'�i�	'�	'�	'�	�	�	�	�	�	�	�	�	�	�	�
�A�C�C�������r�"�"�"�	(�	(�	(�	(�	(�	(�	(�	�	(�	(�	(�	
���*�g�q�q�s�s�D�9�9�9�9�9rAc��Gd�dt��}|��}|�|j���d��dS)Nc��eZdZeZdS)�"TestTraitType.test_info.<locals>.AN�rMrNrOr$rtrPrAr?r[r��s�������B�B�BrAr[z	any value)rrcrt�infor]s   r?�	test_infozTestTraitType.test_info�s_��	�	�	�	�	�	�	�	�	�
�A�C�C�����������k�2�2�2�2�2rAc��Gd�dt��}|��}|�t|jj|d��dS)Nc�"�eZdZe��ZdS)�#TestTraitType.test_error.<locals>.ANr�rPrAr?r[r��s����������B�B�BrAr[rb)rr�r#rtr}r]s   r?�
test_errorzTestTraitType.test_error�s]��	�	�	�	�	�	�	�	�	�
�A�C�C�����*�a�d�j�!�R�8�8�8�8�8rAc�*�Gd�dt��}Gd�d|��}Gd�d|��}|��}|�|ji��|�|jd��|�|jddi��|��}|�|jd	��|�|jdd	i��|��}|�|ji��|�|jd
��|�|jdd
i��|��}|��}|�|ji��|�|jd��|�|jddi��dS)Nc�*�eZdZed��Zd�ZdS)�<TestTraitType.test_deprecated_dynamic_initializer.<locals>.Arbc��dS�N�rP�rJs r?�
_x_defaultzGTestTraitType.test_deprecated_dynamic_initializer.<locals>.A._x_default�rmrAN)rMrNrOr�xr�rPrAr?r[r��s0��������B���A�
�
�
�
�
rAr[c�$�eZdZed��ZdS)�<TestTraitType.test_deprecated_dynamic_initializer.<locals>.B�N�rMrNrOrr�rPrAr?r�r�����������B���A�A�ArAr�c��eZdZd�ZdS)�<TestTraitType.test_deprecated_dynamic_initializer.<locals>.Cc��dS�N�rPr�s r?r�zGTestTraitType.test_deprecated_dynamic_initializer.<locals>.C._x_default�rmrAN)rMrNrOr�rPrAr?�Cr��rprAr�r�r�r�r��rrc�
_trait_valuesr��rJr[r�r�rZ�b�cs       r?�#test_deprecated_dynamic_initializerz1TestTraitType.test_deprecated_dynamic_initializer�s���	�	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	�	�	�	�	�	��	�	�	�
�A�C�C�������"�-�-�-������b�!�!�!������3��)�4�4�4�
�A�C�C�������b�!�!�!������3��)�4�4�4�
�A�C�C�������"�-�-�-������b�!�!�!������3��)�4�4�4�
�A�C�C��
�A�C�C�������"�-�-�-������b�!�!�!������3��)�4�4�4�4�4rAc�j�tg��5Gd�dt��}|��}d|_ddd��n#1swxYwY|jdksJ�tddg��5}Gd�dt��}|��}d|_ddd��n#1swxYwY|jdksJ�dS)Nc��eZdZe��Zed��d���Zed��d���Ze	d��d���Z
dS)�CTestTraitType.test_deprecated_method_warnings.<locals>.ShouldntWarnr�c��dS�NrbrPr�s r?r�zNTestTraitType.test_deprecated_method_warnings.<locals>.ShouldntWarn._x_default�s���2rAc��|jSrz�rl�rJ�proposals  r?�_x_validatezOTestTraitType.test_deprecated_method_warnings.<locals>.ShouldntWarn._x_validate�s
��#�>�)rAc��dSrzrPrIs  r?�
_x_changedzNTestTraitType.test_deprecated_method_warnings.<locals>.ShouldntWarn._x_changed�s���DrAN)rMrNrOrr�r*r�r0r�r-r�rPrAr?�ShouldntWarnr��s��������G�I�I��������������#���*�*���*������������rAr��z	@validatez@observec�4�eZdZe��Zd�Zd�Zd�ZdS)�ATestTraitType.test_deprecated_method_warnings.<locals>.ShouldWarnc��dSr�rPr�s r?r�zLTestTraitType.test_deprecated_method_warnings.<locals>.ShouldWarn._x_default�s���2rAc��|SrzrP)rJrl�_s   r?r�zMTestTraitType.test_deprecated_method_warnings.<locals>.ShouldWarn._x_validate�s�� �LrAc��dSrzrPr�s r?r�zLTestTraitType.test_deprecated_method_warnings.<locals>.ShouldWarn._x_changed�s���DrAN)rMrNrOrr�r�r�r�rPrAr?�
ShouldWarnr��sL�������G�I�I�����!�!�!�����rAr�)r4rr�)rJr�r~�wr�s     r?�test_deprecated_method_warningsz-TestTraitType.test_deprecated_method_warnings�sl��
�r�
"�
"�	�	�

�

�

�

�

�y�

�

�

��,�.�.�C��C�E�%	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�(�u��z�z�z�z�
��Z�8�
9�
9�	�Q�

�

�

�

�

�Y�

�

�

��*�,�,�C��C�E�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�"�u��z�z�z�z�z�zs#�%A�A�A�*%B�B�"Bc�*�Gd�dt��}Gd�d|��}Gd�d|��}|��}|�|ji��|�|jd��|�|jddi��|��}|�|jd	��|�|jdd	i��|��}|�|ji��|�|jd
��|�|jdd
i��|��}|��}|�|ji��|�|jd��|�|jddi��dS)Nc�L�eZdZed��Zed��d���ZdS)�1TestTraitType.test_dynamic_initializer.<locals>.Arbr�c��dSr�rPr�s r?�
_default_xz<TestTraitType.test_dynamic_initializer.<locals>.A._default_x�����rrAN)rMrNrOrr�r*r�rPrAr?r[r��sB��������B���A�
�W�S�\�\�
�
��\�
�
�
rAr[c�$�eZdZed��ZdS)�1TestTraitType.test_dynamic_initializer.<locals>.Br�Nr�rPrAr?r�r��r�rAr�c�6�eZdZed��d���ZdS)�1TestTraitType.test_dynamic_initializer.<locals>.Cr�c��dSr�rPr�s r?r�z<TestTraitType.test_dynamic_initializer.<locals>.C._default_x�r�rAN)rMrNrOr*r�rPrAr?r�r��s5������
�W�S�\�\�
�
��\�
�
�
rAr�r�r�r�r�r�r�s       r?�test_dynamic_initializerz&TestTraitType.test_dynamic_initializer�s���	�	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	�	�	�	�	�	��	�	�	�

�A�C�C�������"�-�-�-������b�!�!�!������3��)�4�4�4�
�A�C�C�������b�!�!�!������3��)�4�4�4�
�A�C�C�������"�-�-�-������b�!�!�!������3��)�4�4�4�
�A�C�C��
�A�C�C�������"�-�-�-������b�!�!�!������3��)�4�4�4�4�4rAc��Gd�dt��}|d���dd���}|�|jdddd���dS)	Nc��eZdZddd�ZdS)�0TestTraitType.test_tag_metadata.<locals>.MyIntTTr3��rZr�N�rMrNrO�metadatarPrAr?rr���������Q�'�'�H�H�HrArrb���r�r�r3)rZr�r�)r$�tagrcr�)rJrrZs   r?�test_tag_metadatazTestTraitType.test_tag_metadata
ss��	(�	(�	(�	(�	(�i�	(�	(�	(�
�G�B�K�K�O�O�a�1�O�%�%�������1�1�1�%=�%=�>�>�>�>�>rAc��Gd�dt��}|d��}|d��}d|jd<|�d|j��dS)Nc��eZdZddd�ZdS)�?TestTraitType.test_metadata_localized_instance.<locals>.MyIntTTr3r�r�Nr�rPrAr?rr�r�rArrbr�r�)r$r��assertNotIn)rJrrZr�s    r?� test_metadata_localized_instancez.TestTraitType.test_metadata_localized_instancesq��	(�	(�	(�	(�	(�i�	(�	(�	(�
�G�B�K�K���G�B�K�K����
�3������a�j�)�)�)�)�)rAc�T�Gd�dt��}|��}|�|�dd��d��|�|�dd��d��i|_|�|�dd��d��|�|�dd��d��d	|_|�|�dd��d	��|�|�dd��d��dS)
Nc��eZdZe���d���e���dd���z�d���ZdS)	�.TestTraitType.test_union_metadata.<locals>.Foor3)�tar�r�)r��tirZ)r�N)rMrNrOrr�r�barrPrAr?�Foor�sQ�������3�5�5�9�9��9�?�?�T�T�V�V�Z�Z�1��Z�%=�%=�=�B�B�c�B�J�J�C�C�CrAr�r�r�r�rZr�r�r3)rrc�trait_metadatar��rJr��foos   r?�test_union_metadataz!TestTraitType.test_union_metadatas;��	K�	K�	K�	K�	K�)�	K�	K�	K��c�e�e��	
����+�+�E�4�8�8�$�?�?�?�����+�+�E�4�8�8�#�>�>�>��������+�+�E�4�8�8�!�<�<�<�����+�+�E�4�8�8�#�>�>�>��������+�+�E�4�8�8�!�<�<�<�����+�+�E�4�8�8�#�>�>�>�>�>rAc�v�Gd�dt��}|��}|�|jd��dS)Nc�L�eZdZee��e��gd���ZdS)�3TestTraitType.test_union_default_value.<locals>.Foor3��
default_valueN�rMrNrOr)rrr�rPrAr?r�r�/s2�������%����������q�9�9�9�C�C�CrAr�r3�rrcr�r�s   r?�test_union_default_valuez&TestTraitType.test_union_default_value.sW��	:�	:�	:�	:�	:�)�	:�	:�	:��c�e�e�������!�$�$�$�$�$rAc��Gd�dt��}|��}d|_|�|jd��dS)Nc�H�eZdZee��e��g��ZdS)�9TestTraitType.test_union_validation_priority.<locals>.FooN)rMrNrOr)rr(r�rPrAr?r�r�6s.�������%���������+�,�,�C�C�CrAr��1r3)rr�rcr�s   r?�test_union_validation_priorityz,TestTraitType.test_union_validation_priority5s^��	-�	-�	-�	-�	-�)�	-�	-�	-��c�e�e����������!�$�$�$�$�$rAc�r�Gd�dt��}|�|��ji��dS)Nc�H�eZdZee��e��g��ZdS)�9TestTraitType.test_union_trait_default_value.<locals>.FooNr�rPrAr?r�r�?s-�������%����������(�(�C�C�CrAr�r�)rJr�s  r?�test_union_trait_default_valuez,TestTraitType.test_union_trait_default_value>sR��	)�	)�	)�	)�	)�)�	)�	)�	)�	
��������B�'�'�'�'�'rAc���Gd�dt��}|d��}tdgdz��5|�dd��|�d��}ddd��n#1swxYwY|�|d��tdgdz��5|�d	d
��|�d	��}ddd��n#1swxYwY|�|d
��dS)Nc��eZdZddd�ZdS)�>TestTraitType.test_deprecated_metadata_access.<locals>.MyIntTTr3r�r�Nr�rPrAr?rrEr�rArrbz.use the instance .metadata dictionary directlyr��keyrlz&use the instance .help string directly�helpz	some help)r$r4�set_metadata�get_metadatarc)rJrrZ�vs    r?�test_deprecated_metadata_accessz-TestTraitType.test_deprecated_metadata_accessDs���	(�	(�	(�	(�	(�i�	(�	(�	(�
�G�B�K�K��
� P�Q�TU�U�
V�
V�	&�	&�
�N�N�5�'�*�*�*����u�%�%�A�	&�	&�	&�	&�	&�	&�	&�	&�	&�	&�	&����	&�	&�	&�	&�	
����G�$�$�$�
� H�I�A�M�
N�
N�	'�	'�
�N�N�6�;�/�/�/����v�&�&�A�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'�	'����	'�	'�	'�	'�	
����K�(�(�(�(�(s#�,A*�*A.�1A.�,C�C�Cc�~�tdg��5Gd�dt��}ddd��dS#1swxYwYdS)N�#Traits should be given as instancesc��eZdZeZdS)�4TestTraitType.test_trait_types_deprecated.<locals>.CN)rMrNrOr�trPrAr?r�rUs���������rAr��r4r�rJr�s  r?�test_trait_types_deprecatedz)TestTraitType.test_trait_types_deprecatedRs���
� E�F�
G�
G�	�	�
�
�
�
�
�I�
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	��2�6�6c�~�tdg��5Gd�dt��}ddd��dS#1swxYwYdS)Nr	c�$�eZdZee��ZdS)�9TestTraitType.test_trait_types_list_deprecated.<locals>.CN)rMrNrOrrrrPrAr?r�r[��������D��I�I���rAr�r
rs  r?� test_trait_types_list_deprecatedz.TestTraitType.test_trait_types_list_deprecatedX���
� E�F�
G�
G�	�	�
�
�
�
�
�I�
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rc�~�tdg��5Gd�dt��}ddd��dS#1swxYwYdS)Nr	c�$�eZdZee��ZdS)�:TestTraitType.test_trait_types_tuple_deprecated.<locals>.CN)rMrNrOr%rrrPrAr?r�ras�������E�#�J�J���rAr�r
rs  r?�!test_trait_types_tuple_deprecatedz/TestTraitType.test_trait_types_tuple_deprecated^s���
� E�F�
G�
G�	�	�
�
�
�
�
�I�
�
�
�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	rc�~�tdg��5Gd�dt��}ddd��dS#1swxYwYdS)Nr	c�$�eZdZee��ZdS)�9TestTraitType.test_trait_types_dict_deprecated.<locals>.CN)rMrNrOrrrrPrAr?r�rgrrAr�r
rs  r?� test_trait_types_dict_deprecatedz.TestTraitType.test_trait_types_dict_deprecateddrrN)rMrNrOr^rdrur�r�r�r�r�r�r�r�r�r�r�r�rrrrrrPrAr?rUrU^sC������ � � �	,�	,�	,�
#�
#�
#�:�:�:�&3�3�3�9�9�9�5�5�5�B)�)�)�V!5�!5�!5�F?�?�?�*�*�*�?�?�?� %�%�%�%�%�%�(�(�(�)�)�)��������������rArUc��eZdZd�Zd�ZdS)�TestHasDescriptorsMetac���|�tt��t��Gd�dt��}|��}|�t|j��t��|�|jd��d|_|�|jd��Gd�dt��}|��}|�|jd��d|_|�|jd��Gd�dt��}|��}|�|jd	��d|_|�|jd��dS)
Nc�"�eZdZe��ZdS)�0TestHasDescriptorsMeta.test_metaclass.<locals>.AN�rMrNrOrrZrPrAr?r[r#o�����������A�A�ArAr[rrbc�"�eZdZe��ZdS)�0TestHasDescriptorsMeta.test_metaclass.<locals>.BN)rMrNrOrr�rPrAr?r�r'xr%rAr�c�$�eZdZed��ZdS)�0TestHasDescriptorsMeta.test_metaclass.<locals>.C�N)rMrNrOrr�rPrAr?r�r)�r�rAr�r*)rcr:rr�	__class__rZr�r�)rJr[rZr�r�r�r�s       r?�test_metaclassz%TestHasDescriptorsMeta.test_metaclassls�������i���-�8�8�8�	�	�	�	�	�	�	�	�	�
�A�C�C������a�k�*�*�M�:�:�:������a� � � ���������b�!�!�!�	�	�	�	�	�	�	�	�	�
�A�C�C�������a� � � ���������b�!�!�!�	�	�	�	�	�	�	�	�	�
�A�C�C�������b�!�!�!���������b�!�!�!�!�!rAc�H�Gd�dt��}Gd�d|��}|�|jj|��|�|jj|��|�|jj|��|�|jj|��dS)Nc�6�eZdZe��Ze��ZdS)�1TestHasDescriptorsMeta.test_this_class.<locals>.AN)rMrNrOr"rrtrPrAr?r[r/�s$����������A�����B�B�BrAr[c�6�eZdZe��Ze��ZdS)�1TestHasDescriptorsMeta.test_this_class.<locals>.BN)rMrNrOr"rt�tttrPrAr?r�r1�s$����������B��$�&�&�C�C�CrAr�)rrcr�
this_classrtr2)rJr[r�s   r?�test_this_classz&TestHasDescriptorsMeta.test_this_class�s���	�	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	�	
�������+�+�+��������+�+�+�������!�,�,�,������)�1�-�-�-�-�-rAN)rMrNrOr,r4rPrAr?r r ks2������"�"�"�8.�.�.�.�.rAr c��eZdZd�ZdS)�TestHasDescriptorsc�p��Gd�dt���G�fd�dt��}|d���}dS)Nc��eZdZd�ZdS)�=TestHasDescriptors.test_setup_instance.<locals>.FooDescriptorc��|j}dSrz�r�)rJrkr�s   r?�
instance_initzKTestHasDescriptors.test_setup_instance.<locals>.FooDescriptor.instance_init�s
���h���rAN)rMrNrOr<rPrAr?�
FooDescriptorr9�s#������
�
�
�
�
rAr=c�4���eZdZ���Z�fd�Z�xZS)�ATestHasDescriptors.test_setup_instance.<locals>.HasFooDescriptorsc�p��|�dd��|_t��j|i|��dS)Nr�)�getr��super�setup_instance)rJ�args�kwargsr+s   �r?rCzPTestHasDescriptors.test_setup_instance.<locals>.HasFooDescriptors.setup_instance�s:���!�:�:�e�T�2�2���&����&��7��7�7�7�7�7rA)rMrNrO�fdrC�
__classcell__)r+r=s@�r?�HasFooDescriptorsr?�sD������������B�
8�
8�
8�
8�
8�
8�
8�
8�
8rArHr�r;)rr)rJrH�hfdr=s   @r?�test_setup_instancez&TestHasDescriptors.test_setup_instance�sz���	�	�	�	�	�N�	�	�	�	8�	8�	8�	8�	8�	8�	8��	8�	8�	8� ��E�*�*�*���rAN)rMrNrOrJrPrAr?r6r6�s#������
+�
+�
+�
+�
+rAr6c�J�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�ZdS)�TestHasTraitsNotifyc�"�g|_g|_dSrz��_notify1�_notify2r�s r?�setUpzTestHasTraitsNotify.setUp������
���
�
�
rAc�@�|j�|||f��dSrz�rO�append�rJr6r7r8s    r?�notify1zTestHasTraitsNotify.notify1��%���
���d�C��-�.�.�.�.�.rAc�@�|j�|||f��dSrz�rPrUrVs    r?�notify2zTestHasTraitsNotify.notify2�rXrAc��Gd�dt��}|��}|�|j��d|_|�t|j��d��d|_|�t|j��d��d|_|�d|jv��d|_|�d|jv��|�	tt|d	d
��|�	tt|dd
��g|_|�|jd�
��d|_d|_|�t|j��d��dS)Nc�6�eZdZe��Ze��ZdS)�.TestHasTraitsNotify.test_notify_all.<locals>.AN�rMrNrOrrZrr�rPrAr?r[r^��$����������A�����A�A�ArAr[r�rb�rZrrb�$@�r�rarcrZ�
bad stringr�T��remover��4@)r�on_trait_changerWrZrc�lenrOr��
assertTruer�r#�setattrr]s   r?�test_notify_allz#TestHasTraitsNotify.test_notify_all�sl��	�	�	�	�	�	�	�	�	�
�A�C�C��	���$�,�'�'�'��������T�]�+�+�Q�/�/�/��������T�]�+�+�Q�/�/�/���������
�5�6�6�6�������(�D�M�9�:�:�:����*�g�q�#�|�D�D�D����*�g�q�#�|�D�D�D���
�	���$�,�t��4�4�4�����������T�]�+�+�Q�/�/�/�/�/rAc�`�Gd�dt��}|��}|�|jd��d|_|�t|j��d��d|_|�d|jv��|�tt|dd��dS)Nc�6�eZdZe��Ze��ZdS)�.TestHasTraitsNotify.test_notify_one.<locals>.ANr_rPrAr?r[rp�r`rAr[rZrrbrbre)rrirWrZrcrjrOrkr�r#rlr]s   r?�test_notify_onez#TestHasTraitsNotify.test_notify_one�s���	�	�	�	�	�	�	�	�	�
�A�C�C��	���$�,��,�,�,��������T�]�+�+�Q�/�/�/���������
�5�6�6�6����*�g�q�#�|�D�D�D�D�DrAc�P�Gd�dt��}Gd�d|��}|��}|�|jd��|�|jd��d|_d|_|�|jd��|�|jd��dS)	Nc�"�eZdZe��ZdS)�,TestHasTraitsNotify.test_subclass.<locals>.ANr$rPrAr?r[rt�r%rAr[c�"�eZdZe��ZdS)�,TestHasTraitsNotify.test_subclass.<locals>.BN�rMrNrOrr�rPrAr?r�rv������������A�A�ArAr�rra�d�Y@�rrcrZr��rJr[r�r�s    r?�
test_subclassz!TestHasTraitsNotify.test_subclass�����	�	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	�
�A�C�C�������a� � � ������c�"�"�"������������c�"�"�"������e�$�$�$�$�$rAc��Gd�dt��}Gd�d|��}|��}|�|jd��|�|jd��d|_d|_|�t|j��d��|�t|j	��d��d	|_d
|_|�
d|jv��|�
d|j	v��dS)
Nc�"�eZdZe��ZdS)�3TestHasTraitsNotify.test_notify_subclass.<locals>.ANr$rPrAr?r[r��r%rAr[c�"�eZdZe��ZdS)�3TestHasTraitsNotify.test_notify_subclass.<locals>.BNrwrPrAr?r�r��rxrAr�rZr�rrarbrcrbrd)rrirWr[rZr�rcrjrOrPrkr|s    r?�test_notify_subclassz(TestHasTraitsNotify.test_notify_subclass�s(��	�	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	�
�A�C�C��	���$�,��,�,�,�	���$�,��,�,�,�����������T�]�+�+�Q�/�/�/�����T�]�+�+�Q�/�/�/������������
�5�6�6�6����(�D�M�9�:�:�:�:�:rAc��Gd�dt��}|��}d|_|�t|j��d��d|_|�d|jv��Gd�d|��}|��}d|_d|_|�d|jv��|�d	|jv��dS)
Nc�,�eZdZe��ZgZd�ZdS)�1TestHasTraitsNotify.test_static_notify.<locals>.Ac�@�|j�|||f��dSrzrTrVs    r?�
_a_changedz<TestHasTraitsNotify.test_static_notify.<locals>.A._a_changed��%���
�$�$�d�C��%5�6�6�6�6�6rAN)rMrNrOrrZrOr�rPrAr?r[r��s3����������A��H�
7�
7�
7�
7�
7rAr[rrbrbc�,�eZdZe��ZgZd�ZdS)�1TestHasTraitsNotify.test_static_notify.<locals>.Bc�@�|j�|||f��dSrzrZrVs    r?�
_b_changedz<TestHasTraitsNotify.test_static_notify.<locals>.B._b_changedr�rAN)rMrNrOrr�rPr�rPrAr?r�r�s3����������A��H�
7�
7�
7�
7�
7rAr�rcrd)rrZrcrjrOrkr�rP)rJr[rZr�r�s     r?�test_static_notifyz&TestHasTraitsNotify.test_static_notify�s���	7�	7�	7�	7�	7�	�	7�	7�	7�
�A�C�C���������Q�Z���!�,�,�,���������
�2�3�3�3�	7�	7�	7�	7�	7��	7�	7�	7�
�A�C�C�������������
�2�3�3�3����(�A�J�6�7�7�7�7�7rAc�l���fd�}�fd�}�fd�}�fd�}�fd�}Gd�dt��}|��}|�|d��d	|_���jd
��|�|dd���|�|d��d
|_���jd��|�|dd���|�|d��d|_���jd��|�|dd���|�|d��d|_���jd��|�|dd���|�|d��d|_���jddd|f����t|jdd��d��|�|dd�����t|jdd��d��dS)Nc���d�_dS�NrP��cbr�s�r?�	callback0z7TestHasTraitsNotify.test_notify_args.<locals>.callback0�����D�G�G�GrAc���|f�_dSrzr�)r6rJs �r?�	callback1z7TestHasTraitsNotify.test_notify_args.<locals>.callback1s����g�D�G�G�GrAc���||f�_dSrzr�)r6r8rJs  �r?�	callback2z7TestHasTraitsNotify.test_notify_args.<locals>.callback2s����S�k�D�G�G�GrAc���|||f�_dSrzr�)r6r7r8rJs   �r?�	callback3z7TestHasTraitsNotify.test_notify_args.<locals>.callback3s����S�#�&�D�G�G�GrAc���||||f�_dSrzr�)r6r7r8r~rJs    �r?�	callback4z7TestHasTraitsNotify.test_notify_args.<locals>.callback4"s����S�#�s�+�D�G�G�GrAc�"�eZdZe��ZdS)�/TestHasTraitsNotify.test_notify_args.<locals>.ANr$rPrAr?r[r�%r%rAr[rZrbrPTrfry�rZ��)rZr��')rZr�r�i��rKr3r)rrirZrcr�rj�_trait_notifiers)rJr�r�r�r�r�r[rZs`       r?�test_notify_argsz$TestHasTraitsNotify.test_notify_argss����	�	�	�	�	�	�	�	�	�	�	"�	"�	"�	"�	"�	'�	'�	'�	'�	'�	,�	,�	,�	,�	,�	�	�	�	�	�	�	�	�	�
�A�C�C��	���)�S�)�)�)���������"�%�%�%�	���)�S���6�6�6�	���)�S�)�)�)���������&�)�)�)�	���)�S���6�6�6�	���)�S�)�)�)���������+�.�.�.�	���)�S���6�6�6�	���)�S�)�)�)���������"4�5�5�5�	���)�S���6�6�6�	���)�S�)�)�)���������3��v�q�"9�:�:�:�����Q�/��4�X�>�?�?��C�C�C�	���)�S���6�6�6�����Q�/��4�X�>�?�?��C�C�C�C�CrAc��Gd�dt��}Gd�d|��}|��}|xjdz
c_|�|j|j��|�|j|j��|xjdz
c_|�|j|j��|�|j|j��dS)Nc�D��eZdZdgZed��ZdZ�fd�Zd�Z�xZ	S)�4TestHasTraitsNotify.test_notify_only_once.<locals>.ArZrc�r��t��jdi|��|�|jdg��dS�NrZrP)rB�__init__ri�	listener1�rJrEr+s  �r?r�z=TestHasTraitsNotify.test_notify_only_once.<locals>.A.__init__Ls@��� ���� �*�*�6�*�*�*��$�$�T�^�c�U�;�;�;�;�;rAc�&�|xjdz
c_dS�Nr3�r�rVs    r?r�z>TestHasTraitsNotify.test_notify_only_once.<locals>.A.listener1P������!�����rA�
rMrNrO�	listen_torrZr�r�r�rG�r+s@r?r[r�Fs`���������I���A���A��A�
<�
<�
<�
<�
<�
�
�
�
�
�
�
rAr[c�2��eZdZdZdZ�fd�Zd�Zd�Z�xZS)�4TestHasTraitsNotify.test_notify_only_once.<locals>.Brc�n��t��jdi|��|�|j��dSr�)rBr�ri�	listener2r�s  �r?r�z=TestHasTraitsNotify.test_notify_only_once.<locals>.B.__init__Xs<��� ���� �*�*�6�*�*�*��$�$�T�^�4�4�4�4�4rAc�&�|xjdz
c_dSr��r�rVs    r?r�z>TestHasTraitsNotify.test_notify_only_once.<locals>.B.listener2\r�rAc�&�|xjdz
c_dSr���drVs    r?r�z?TestHasTraitsNotify.test_notify_only_once.<locals>.B._a_changed_r�rA)	rMrNrOr�r�r�r�r�rGr�s@r?r�r�Ss`��������A��A�
5�
5�
5�
5�
5�
�
�
�
�
�
�
�
�
�
rAr�r3�rrZrcr�r�r�r|s    r?�test_notify_only_oncez)TestHasTraitsNotify.test_notify_only_onceEs���	�	�	�	�	�	�	�	�	�
	�
	�
	�
	�
	��
	�
	�
	�
�A�C�C��	���q���������a�c�"�"�"������a�c�"�"�"�	���q���������a�c�"�"�"������a�c�"�"�"�"�"rAN�
rMrNrOrQrWr[rmrqr}r�r�r�r�rPrAr?rLrL�s����������/�/�/�/�/�/�0�0�0�.E�E�E�
%�
%�
%�;�;�;�&8�8�8�8.D�.D�.D�`##�##�##�##�##rArLc�J�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�ZdS)�TestObserveDecoratorc�"�g|_g|_dSrzrNr�s r?rQzTestObserveDecorator.setUplrRrAc�:�|j�|��dSrzrTrIs  r?rWzTestObserveDecorator.notify1p����
���V�$�$�$�$�$rAc�:�|j�|��dSrzrZrIs  r?r[zTestObserveDecorator.notify2sr�rAc�B�Gd�dt��}|��}|�|j��d|_|�t|j��d��d|_|�t|j��d��d|_tddd|d��}|�	||jv��d|_td	dd|d��}|�	||jv��|�
tt|dd
��|�
tt|d	d
��g|_|�
|j��d|_d|_|�t|j��d��dS)
Nc�6�eZdZe��Ze��ZdS)�/TestObserveDecorator.test_notify_all.<locals>.ANr_rPrAr?r[r�wr`rAr[rrarbrZrKrcr�rer�rh)rr-rWrZrcrjrOr�r@rkr�r#rl�	unobserve�rJr[rZrKs    r?rmz$TestObserveDecorator.test_notify_allvs���	�	�	�	�	�	�	�	�	�
�A�C�C��	�	�	�$�,�����������T�]�+�+�Q�/�/�/��������T�]�+�+�Q�/�/�/�����S�!�R��H�5�5������$�-�/�0�0�0�����S�#�t�Q��9�9������$�-�/�0�0�0����*�g�q�#�|�D�D�D����*�g�q�#�|�D�D�D���
�	���D�L�!�!�!�����������T�]�+�+�Q�/�/�/�/�/rAc��Gd�dt��}|��}|�|jd��d|_|�t|j��d��d|_tddd|d��}|�||jv��|�	tt|dd��dS)Nc�6�eZdZe��Ze��ZdS)�/TestObserveDecorator.test_notify_one.<locals>.ANr_rPrAr?r[r��r`rAr[rZrrbrKre)rr-rWrZrcrjrOr@rkr�r#rlr�s    r?rqz$TestObserveDecorator.test_notify_one�s���	�	�	�	�	�	�	�	�	�
�A�C�C��	�	�	�$�,��$�$�$��������T�]�+�+�Q�/�/�/�����S�!�R��H�5�5������$�-�/�0�0�0����*�g�q�#�|�D�D�D�D�DrAc�P�Gd�dt��}Gd�d|��}|��}|�|jd��|�|jd��d|_d|_|�|jd��|�|jd��dS)	Nc�"�eZdZe��ZdS)�-TestObserveDecorator.test_subclass.<locals>.ANr$rPrAr?r[r��r%rAr[c�"�eZdZe��ZdS)�-TestObserveDecorator.test_subclass.<locals>.BNrwrPrAr?r�r��rxrAr�rraryrzr{r|s    r?r}z"TestObserveDecorator.test_subclass�r~rAc�\�Gd�dt��}Gd�d|��}|��}|�|jd��|�|jd��d|_d|_|�t|j��d��|�t|j	��d��d	|_d
|_tddd	|d��}|�||jv��tddd
|d��}|�||j	v��dS)Nc�"�eZdZe��ZdS)�4TestObserveDecorator.test_notify_subclass.<locals>.ANr$rPrAr?r[r��r%rAr[c�"�eZdZe��ZdS)�4TestObserveDecorator.test_notify_subclass.<locals>.BNrwrPrAr?r�r��rxrAr�rZr�rrarbrcrK)rr-rWr[rZr�rcrjrOrPr@rk)rJr[r�r�rKs     r?r�z)TestObserveDecorator.test_notify_subclass�sM��	�	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	�
�A�C�C��	�	�	�$�,��$�$�$�	�	�	�$�,��$�$�$�����������T�]�+�+�Q�/�/�/�����T�]�+�+�Q�/�/�/��������S�!�R��H�5�5������$�-�/�0�0�0��S�#�t�Q��9�9������$�-�/�0�0�0�0�0rAc���Gd�dt��}|��}d|_|�t|j��d��d|_tddd|d��}|�||jv��d|_|�t|j��d��td	dd|d��}|�||jv��Gd
�d|��}|��}d|_d|_tddd|d��}|�||jv��td	d
d|d��}|�||j	v��dS)Nc��eZdZe��Ze��ZgZgZed��d���Z	ee
��d���ZdS)�2TestObserveDecorator.test_static_notify.<locals>.ArZc�:�|j�|��dSrzrTrIs  r?r�z=TestObserveDecorator.test_static_notify.<locals>.A._a_changed�����
�$�$�V�,�,�,�,�,rAc�:�|j�|��dSrz)�_notify_anyrUrIs  r?�_any_changedz?TestObserveDecorator.test_static_notify.<locals>.A._any_changed�s��� �'�'��/�/�/�/�/rAN)rMrNrOrrZr�rOr�r-r�rr�rPrAr?r[r��sx����������A�����A��H��K�
�W�S�\�\�
-�
-��\�
-��W�S�\�\�
0�
0��\�
0�
0�
0rAr[rrbrZrKr3r�r�c�N�eZdZe��ZgZed��d���ZdS)�2TestObserveDecorator.test_static_notify.<locals>.Br�c�:�|j�|��dSrzrZrIs  r?r�z=TestObserveDecorator.test_static_notify.<locals>.B._b_changed�r�rAN)rMrNrOrr�rPr-r�rPrAr?r�r��sE����������A��H�
�W�S�\�\�
-�
-��\�
-�
-�
-rAr�rcra)
rrZrcrjrOr@rkr�r�rP)rJr[rZrKr�r�s      r?r�z'TestObserveDecorator.test_static_notify�s���	0�	0�	0�	0�	0�	�	0�	0�	0�
�A�C�C���������Q�Z���!�,�,�,�����S�!�R��H�5�5������!�*�,�-�-�-��������Q�]�+�+�Q�/�/�/��S�!�Q��8�4�4������!�-�/�0�0�0�	-�	-�	-�	-�	-��	-�	-�	-�
�A�C�C���������S�!�R��H�5�5������!�*�,�-�-�-��S�#�t�Q��9�9������!�*�,�-�-�-�-�-rAc����fd�}�fd�}Gd�dt��}|��}|�|d��d|_���jd��|�|d��|�|d��d|_tddd|d	��}���j|����t|j	dd	��d
��|�|d����t|j	dd	��d��dS)Nc���d�_dSr�r�r�s�r?r�z8TestObserveDecorator.test_notify_args.<locals>.callback0�r�rAc���|�_dSrzr�)rKrJs �r?r�z8TestObserveDecorator.test_notify_args.<locals>.callback1�s����D�G�G�GrAc�"�eZdZe��ZdS)�0TestObserveDecorator.test_notify_args.<locals>.ANr$rPrAr?r[r��r%rAr[rZrbrPryrKr3r)
rrirZrcr�r�r-r@rjr�)rJr�r�r[rZrKs`     r?r�z%TestObserveDecorator.test_notify_args�sm���	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�
�A�C�C��	���)�S�)�)�)���������"�%�%�%�	���I�s�#�#�#�	�	�	�)�S�!�!�!�����S�"�c�1�h�7�7�������&�)�)�)�����Q�/��4�X�>�?�?��C�C�C�	���I�s�#�#�#�����Q�/��4�X�>�?�?��C�C�C�C�CrAc��Gd�dt��}Gd�d|��}|��}|xjdz
c_|�|j|j��|�|j|j��|xjdz
c_|�|j|j��|�|j|j��dS)Nc�D��eZdZdgZed��ZdZ�fd�Zd�Z�xZ	S)�5TestObserveDecorator.test_notify_only_once.<locals>.ArZrc�r��t��jdi|��|�|jdg��dSr�)rBr�r-r�r�s  �r?r�z>TestObserveDecorator.test_notify_only_once.<locals>.A.__init__s>��� ���� �*�*�6�*�*�*����T�^�c�U�3�3�3�3�3rAc�&�|xjdz
c_dSr�r�rIs  r?r�z?TestObserveDecorator.test_notify_only_once.<locals>.A.listener1r�rAr�r�s@r?r[r�s`���������I���A���A��A�
4�
4�
4�
4�
4�
�
�
�
�
�
�
rAr[c�T��eZdZdZdZ�fd�Zd�Zed��d���Z�xZ	S)�5TestObserveDecorator.test_notify_only_once.<locals>.Brc�n��t��jdi|��|�|j��dSr�)rBr�r-r�r�s  �r?r�z>TestObserveDecorator.test_notify_only_once.<locals>.B.__init__s:��� ���� �*�*�6�*�*�*����T�^�,�,�,�,�,rAc�&�|xjdz
c_dSr�r�rIs  r?r�z?TestObserveDecorator.test_notify_only_once.<locals>.B.listener2r�rArZc�&�|xjdz
c_dSr�r�rIs  r?r�z@TestObserveDecorator.test_notify_only_once.<locals>.B._a_changeds�����!�����rA)
rMrNrOr�r�r�r�r-r�rGr�s@r?r�r�st��������A��A�
-�
-�
-�
-�
-�
�
�
��W�S�\�\�
�
��\�
�
�
�
�
rAr�r3r�r|s    r?r�z*TestObserveDecorator.test_notify_only_onces���	�	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	� 
�A�C�C��	���q���������a�c�"�"�"������a�c�"�"�"�	���q���������a�c�"�"�"������a�c�"�"�"�"�"rANr�rPrAr?r�r�ks����������%�%�%�%�%�%�0�0�0�2E�E�E�
%�
%�
%�1�1�1�*(.�(.�(.�TD�D�D�2$#�$#�$#�$#�$#rAr�c�J�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�ZdS)�
TestHasTraitsc��Gd�dt��}|��}|�t|�����ddg��|�t|�����ddg��|�|�d����|�|�d����dS)Nc�6�eZdZe��Ze��ZdS)�)TestHasTraits.test_trait_names.<locals>.AN�rMrNrOr�ir�frPrAr?r[r�-r`rAr[r�r��g)rrc�sorted�trait_names�class_trait_namesrk�	has_trait�assertFalser]s   r?�test_trait_nameszTestHasTraits.test_trait_names,s���	�	�	�	�	�	�	�	�	�
�A�C�C�������
�
���0�0�3��*�=�=�=������ 3� 3� 5� 5�6�6��c�
�C�C�C�������C�(�(�)�)�)�������S�)�)�*�*�*�*�*rAc��Gd�dt��}|��}|�|�d����|�|�d����d|_|j|�|�d����|�|�d����dS)Nc�6�eZdZe��Ze��ZdS)�-TestHasTraits.test_trait_has_value.<locals>.ANr�rPrAr?r[r8r`rAr[r�r�r3r�)rr�trait_has_valuer�r�rkr]s   r?�test_trait_has_valuez"TestHasTraits.test_trait_has_value7s���	�	�	�	�	�	�	�	�	�
�A�C�C������*�*�3�/�/�0�0�0�����*�*�3�/�/�0�0�0����	�������)�)�#�.�.�/�/�/�����)�)�#�.�.�/�/�/�/�/rAc���tdg��5Gd�dt��}ddd��n#1swxYwY|��}|�|�dd��d��dS)N�1metadata should be set using the \.tag\(\) methodc�&�eZdZed���ZdS)�7TestHasTraits.test_trait_metadata_deprecated.<locals>.A�MY_VALUE��
config_keyN�rMrNrOrr�rPrAr?r[r
Gs �������C�:�.�.�.���rAr[r�r
r)r4rrcr�r]s   r?�test_trait_metadata_deprecatedz,TestHasTraits.test_trait_metadata_deprecatedDs���
� T�U�
V�
V�	/�	/�
/�
/�
/�
/�
/�I�
/�
/�
/�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/�	/����	/�	/�	/�	/�

�A�C�C������)�)�#�|�<�<�j�I�I�I�I�Is�1�5�5c��Gd�dt��}|��}|�|�dd��d��dS)Nc�J�eZdZe���d���ZdS)�,TestHasTraits.test_trait_metadata.<locals>.ArrN)rMrNrOrr�r�rPrAr?r[rNs'����������	�	�Z�	�0�0�A�A�ArAr[r�r
r�rrcr�r]s   r?�test_trait_metadataz!TestHasTraits.test_trait_metadataMse��	1�	1�	1�	1�	1�	�	1�	1�	1�
�A�C�C������)�)�#�|�<�<�j�I�I�I�I�IrAc���Gd�dt��}|��}|�|�dd��d��|�|�ddd��d��dS)Nc�"�eZdZe��ZdS)�4TestHasTraits.test_trait_metadata_default.<locals>.ANrrPrAr?r[rUr%rAr[r�r
r*rr]s   r?�test_trait_metadata_defaultz)TestHasTraits.test_trait_metadata_defaultTs���	�	�	�	�	�	�	�	�	�
�A�C�C������)�)�#�|�<�<�d�C�C�C�����)�)�#�|�Y�G�G��S�S�S�S�SrAc�D�Gd�dt��}|��}|�|���t|j|j�����|�|���t|j|j�����dS)Nc�6�eZdZe��Ze��ZdS)�$TestHasTraits.test_traits.<locals>.ANr�rPrAr?r[r]r`rAr[)r�r�)rrc�traitsr;r�r��class_traitsr]s   r?�test_traitszTestHasTraits.test_traits\s���	�	�	�	�	�	�	�	�	�
�A�C�C����������T�A�C�1�3�%7�%7�%7�8�8�8�������)�)�4�!�#���+=�+=�+=�>�>�>�>�>rAc���Gd�dt��}|��}|�|���t|j|j|j�����|�dd���}|�|t|j�����|�d��	��}|�|t|j|j|j�����dS)
Nc��eZdZe���dd���Ze���dd���Zed��ZdS)�-TestHasTraits.test_traits_metadata.<locals>.A�VALUE1�VALUE2�r
�other_thing�VALUE3rN)	rMrNrOrr�r�rr��jrPrAr?r[r!fsQ����������	�	�X�8�	�D�D�A�������x�X��F�F�A���A���A�A�ArAr[�r�r�r'r"r#r$�r�c��dS�NTrP�rs r?�<lambda>z4TestHasTraits.test_traits_metadata.<locals>.<lambda>r���t�rAr)rrcrr;r�r�r'�rJr[rZrs    r?�test_traits_metadataz"TestHasTraits.test_traits_metadataes���	�	�	�	�	�	�	�	�	�

�A�C�C����������T�A�C�1�3�!�#�%>�%>�%>�?�?�?����X�8��D�D������������-�-�-����^�^��4�4���������q�s�a�c�!:�!:�!:�;�;�;�;�;rAc�<�tdgdz��5Gd�dt��}ddd��n#1swxYwY|��}|�|���t	|j|j|j�����|�dd���}|�|t	|j�	����|�d
����}|�|t	|j|j|j�����dS)Nrr�c�X�eZdZedd���Zedd���Zed��ZdS)�8TestHasTraits.test_traits_metadata_deprecated.<locals>.Ar"r#r$r&rN)rMrNrOrr�rr�r'rPrAr?r[r3xsC�������C�8��B�B�B���E�X�8�D�D�D���C��F�F���rAr[r(r"r#r$r)c��dSr+rPr,s r?r-z?TestHasTraits.test_traits_metadata_deprecated.<locals>.<lambda>�r.rAr)r4rrcrr;r�r�r'r/s    r?�test_traits_metadata_deprecatedz-TestHasTraits.test_traits_metadata_deprecatedusV��
� T�U�XY�Y�
Z�
Z�	�	�
�
�
�
�
�I�
�
�
�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�A�C�C����������T�A�C�1�3�!�#�%>�%>�%>�?�?�?����X�8��D�D������������-�-�-����^�^��4�4���������q�s�a�c�!:�!:�!:�;�;�;�;�;s�4�8�8c��Gd�dt��}|dd���}|�|jd��|�|jd��dS)Nc�6�eZdZe��Ze��ZdS)�"TestHasTraits.test_init.<locals>.AN)rMrNrOrr�rr�rPrAr?r[r8�r`rAr[r3rc)r�r�)rrcr�r�r]s   r?�	test_initzTestHasTraits.test_init�su��	�	�	�	�	�	�	�	�	�
�A��T�N�N�N�������a� � � ������d�#�#�#�#�#rAc��Gd�dt��}|d��}|�|jd��|�t|��dS)Nc�4��eZdZed��Z�fd�Z�xZS)�-TestHasTraits.test_positional_args.<locals>.Arc�V��t�����||_dSrz)rBr�r�)rJr�r+s  �r?r�z6TestHasTraits.test_positional_args.<locals>.A.__init__�s$������ � �"�"�"�����rA)rMrNrOrr�r�rGr�s@r?r[r<�sE���������A���A�
�
�
�
�
�
�
�
�
rAr[r�)rrcr�r��	TypeErrorr]s   r?�test_positional_argsz"TestHasTraits.test_positional_args�so��	�	�	�	�	�	�	�	�	�
�A�a�D�D�������a� � � ����)�Q�'�'�'�'�'rAN)
rMrNrOrrrrrrr0r5r9r?rPrAr?r�r�+s�������	+�	+�	+�0�0�0�J�J�J�J�J�J�T�T�T�?�?�?�<�<�<� <�<�<�$$�$�$�(�(�(�(�(rAr�c�>�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	S)
�TestTypec�$�Gd�d��}Gd�dt��}|��}|�|jt��||_|�|j|��|�t
t|dd��dS)Nc��eZdZdS)� TestType.test_default.<locals>.BN�rMrNrOrPrAr?r�rD���������DrAr�c�&�eZdZed���ZdS)� TestType.test_default.<locals>.AT��
allow_noneN�rMrNrOr&�klassrPrAr?r[rH�s �������D�D�)�)�)�E�E�ErAr[rLrb)rrcrL�objectr�r#rl)rJr�r[rZs    r?�test_defaultzTestType.test_default�s���	�	�	�	�	�	�	�	�	*�	*�	*�	*�	*�	�	*�	*�	*�
�A�C�C�������&�)�)�)���������!�$�$�$����*�g�q�'�2�>�>�>�>�>rAc�����Gd�d���Gd�d����G��fd�dt��}|�|jjt��|�|jjt��|�|jjd��|�|jjt��|�|jj���|�|jj���|�|jj���|�|jj���|�|j	jd��|�|j	j���|�|j
j���|�|j
j���|��}|�|jt��|�|jd��|�|j���|�|j���|�|j	d��|�|j
���dS)Nc��eZdZdS)�(TestType.test_default_options.<locals>.BNrErPrAr?r�rQ�rFrAr�c��eZdZdS)�(TestType.test_default_options.<locals>.CNrErPrAr?r�rS�rFrAr�c���eZdZe��Zedd���Ze���Ze����Zed�d���Ze�����Z	dS)�(TestType.test_default_options.<locals>.ANTrI�rL)r�rLrJ)r�rL)
rMrNrOr&�k1�k2�k3�k4�k5�k6)r�r�s��r?r[rU�sv�����������B���d�t�,�,�,�B���a���B���A����B���D��d�C�C�C�B���A�Q�/�/�/�B�B�BrAr[)r�assertIsrWr�rMrLrXrYrZr[r\)rJr[rZr�r�s   @@r?�test_default_optionszTestType.test_default_options�sL����	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	�	0�	0�	0�	0�	0�	0�	0�	0�	�	0�	0�	0�	
�
�
�a�d�(�&�1�1�1��
�
�a�d�j�&�)�)�)��
�
�a�d�(�$�/�/�/��
�
�a�d�j�&�)�)�)��
�
�a�d�(�!�,�,�,��
�
�a�d�j�!�$�$�$��
�
�a�d�(�!�,�,�,��
�
�a�d�j�!�$�$�$��
�
�a�d�(�$�/�/�/��
�
�a�d�j�!�$�$�$��
�
�a�d�(�!�,�,�,��
�
�a�d�j�!�$�$�$�
�A�C�C���
�
�a�d�F�#�#�#��
�
�a�d�D�!�!�!��
�
�a�d�A�����
�
�a�d�A�����
�
�a�d�D�!�!�!��
�
�a�d�A�����rAc�T��Gd�d���Gd�d��}G�fd�dt��}|��}|�|j���|�tt
|d|��|�tt
|dt���|_dS)Nc��eZdZdS)�TestType.test_value.<locals>.BNrErPrAr?r�ra�rFrAr�c��eZdZdS)�TestType.test_value.<locals>.CNrErPrAr?r�rc�rFrAr�c�&��eZdZe���ZdS)�TestType.test_value.<locals>.ANrK�r�s�r?r[re����������D��G�G�E�E�ErAr[rL)rrcrLr�r#rlrM�rJr�r[rZr�s    @r?�
test_valuezTestType.test_value�s����	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�
�A�C�C�������!�$�$�$����*�g�q�'�1�=�=�=����*�g�q�'�6�B�B�B�����rAc�<��Gd�d���Gd�d���}G�fd�dt��}|��}|�|j���|�tt
|dd��||_|�|j|��dS)Nc��eZdZdS)�#TestType.test_allow_none.<locals>.BNrErPrAr?r�rl�rFrAr�c��eZdZdS)�#TestType.test_allow_none.<locals>.CNrErPrAr?r�rn�rFrAr�c�&��eZdZe���ZdS)�#TestType.test_allow_none.<locals>.ANrKrfs�r?r[rp�rgrAr[rL)rrcrLr�r#rlrhs    @r?�test_allow_nonezTestType.test_allow_none�s����	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	�	�	�	�	�	�	�	�	�	�	�	�
�A�C�C�������!�$�$�$����*�g�q�'�4�@�@�@���������!�$�$�$�$�$rAc��Gd�dt��}|�t|��Gd�dt��}|�t|��dS)Nc�$�eZdZed��ZdS)�'TestType.test_validate_klass.<locals>.Azno strings allowedNrKrPrAr?r[rt�s�������D�-�.�.�E�E�ErAr[c�$�eZdZed��ZdS)rtz
rub.adub.DuckNrKrPrAr?r[z'TestType.test_validate_klass.<locals>.A�s�������D��)�)�E�E�ErA)rr��ImportError)rJr[s  r?�test_validate_klasszTestType.test_validate_klass�s���	/�	/�	/�	/�	/�	�	/�	/�	/�	
���+�q�)�)�)�	*�	*�	*�	*�	*�	�	*�	*�	*�	
���+�q�)�)�)�)�)rAc���Gd�d���G�fd�dt��}|�t|��G�fd�dt��}|�tt|��d��dS)Nc��eZdZdS)�)TestType.test_validate_default.<locals>.BNrErPrAr?r�rzrFrAr�c�(��eZdZed���ZdS)�)TestType.test_validate_default.<locals>.Ar�NrKrfs�r?r[r|s ��������D���*�*�E�E�ErAr[c�(��eZdZed���ZdS)�)TestType.test_validate_default.<locals>.CNrKrfs�r?r�r~s��������D��q�M�M�E�E�ErAr�rL)rr�rvr#r�)rJr[r�r�s   @r?�test_validate_defaultzTestType.test_validate_defaults����	�	�	�	�	�	�	�	�	+�	+�	+�	+�	+�	+�	+�	�	+�	+�	+�	
���+�q�)�)�)�	"�	"�	"�	"�	"�	"�	"�	�	"�	"�	"�	
���*�g�q�q�s�s�G�<�<�<�<�<rAc���Gd�dt��}ddlm}|��}||_|�|j|��|�tt|dd��dS)Nc�$�eZdZed��ZdS)�"TestType.test_str_klass.<locals>.A�traitlets.config.ConfigNrKrPrAr?r[r�s�������D�2�3�3�E�E�ErAr[r��ConfigrLrb)r�traitlets.configr�rLrcr�r#rl)rJr[r�rZs    r?�test_str_klasszTestType.test_str_klasss���	4�	4�	4�	4�	4�	�	4�	4�	4�	,�+�+�+�+�+�
�A�C�C����������&�)�)�)����*�g�q�'�2�>�>�>�>�>rAc��Gd�dt��}|d���}ddlm}|�|j|��dS)Nc�"�eZdZe��ZdS)�&TestType.test_set_str_klass.<locals>.ANrKrPrAr?r[r�s�������D�F�F�E�E�ErAr[r�rVrr�)rr�r�rcrL)rJr[rZr�s    r?�test_set_str_klasszTestType.test_set_str_klasssq��	�	�	�	�	�	�	�	�	�
�A�-�.�.�.��+�+�+�+�+�+������&�)�)�)�)�)rAN)rMrNrOrNr^rirqrwrr�r�rPrAr?rArA�s�������?�?�?�$�$�$�L��� %�%�%� 	*�	*�	*�=�=�=�
?�
?�
?�*�*�*�*�*rArAc�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestInstancec���Gd�d���Gd�d���}Gd�d��}G�fd�dt��}|��}|�|jdu�����|_|�t|j�����|��|_|�t|j�����|�t
t|d	���|�t
t|d	|��|�t
t|d	|����dS)
Nc��eZdZdS)�$TestInstance.test_basic.<locals>.FooNrErPrAr?r�r�)rFrAr�c��eZdZdS)�$TestInstance.test_basic.<locals>.BarNrErPrAr?�Barr�,rFrAr�c��eZdZdS)�$TestInstance.test_basic.<locals>.BahNrErPrAr?�Bahr�/rFrAr�c�*��eZdZe�d���ZdS)�"TestInstance.test_basic.<locals>.ATrIN�rMrNrOrrk�r�s�r?r[r�2�#��������8�C�D�1�1�1�D�D�DrAr[rk)rrkrkr{r�r#rl)rJr�r�r[rZr�s     @r?�
test_basiczTestInstance.test_basic(s����	�	�	�	�	�	�	�	�	�	�	�	�	�#�	�	�	�	�	�	�	�	�	�	�	�	2�	2�	2�	2�	2�	2�	2�	�	2�	2�	2�
�A�C�C�������$��'�'�'����������
�1�6�3�/�/�0�0�0����������
�1�6�3�/�/�0�0�0����*�g�q�&�#�>�>�>����*�g�q�&�#�>�>�>����*�g�q�&�#�#�%�%�@�@�@�@�@rAc����Gd�d���Gd�d���}Gd�d��}G�fd�dt���G�fd	�d
t��}|��}|�|jdu�����|_|�t	|j�����|��|_|�t	|j�����|�tt|d���|�tt|d|��|�tt|d|����dS)Nc��eZdZdS)�,TestInstance.test_default_klass.<locals>.FooNrErPrAr?r�r�@rFrAr�c��eZdZdS)�,TestInstance.test_default_klass.<locals>.BarNrErPrAr?r�r�CrFrAr�c��eZdZdS)�,TestInstance.test_default_klass.<locals>.BahNrErPrAr?r�r�FrFrAr�c���eZdZ�ZdS)�4TestInstance.test_default_klass.<locals>.FooInstanceN)rMrNrOrLr�s�r?�FooInstancer�Is��������E�E�ErAr�c�(��eZdZ�d���ZdS)�*TestInstance.test_default_klass.<locals>.ATrIN)rMrNrOrk)r�s�r?r[r�Ls!��������;�$�/�/�/�D�D�DrAr[rk)rrrkrkr{r�r#rl)rJr�r�r[rZr�r�s     @@r?�test_default_klasszTestInstance.test_default_klass?s�����	�	�	�	�	�	�	�	�	�	�	�	�	�#�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�(�	�	�	�	0�	0�	0�	0�	0�	0�	0�	�	0�	0�	0�
�A�C�C�������$��'�'�'����������
�1�6�3�/�/�0�0�0����������
�1�6�3�/�/�0�0�0����*�g�q�&�#�>�>�>����*�g�q�&�#�>�>�>����*�g�q�&�#�#�%�%�@�@�@�@�@rAc���Gd�d���G�fd�dt��}|��}|��}|�|j|ju��dS)Nc��eZdZdS)�3TestInstance.test_unique_default_value.<locals>.FooNrErPrAr?r�r�ZrFrAr�c�*��eZdZe�di��ZdS)�1TestInstance.test_unique_default_value.<locals>.ArPNr�r�s�r?r[r�]s"��������8�C��R�(�(�D�D�DrAr[)rrkrk)rJr[rZr�r�s    @r?�test_unique_default_valuez&TestInstance.test_unique_default_valueYs����	�	�	�	�	�	�	�	�	)�	)�	)�	)�	)�	)�	)�	�	)�	)�	)�
�A�C�C��
�A�C�C�������a�f�,�-�-�-�-�-rAc�
��	�Gd�d���	Gd�d��}Gd�d���G�	fd�dt��}|��}|�|jjd	��G�fd
�dt��}|��}|�|jjd	��|�|jjd��G�	fd
�dt��}|��}|�|jdu��dS)Nc��eZdZd�ZdS)�&TestInstance.test_args_kw.<locals>.Fooc��||_dSrzr�)rJr�s  r?r�z/TestInstance.test_args_kw.<locals>.Foo.__init__fs
������rAN�rMrNrOr�rPrAr?r�r�es#������
�
�
�
�
rAr�c��eZdZdS)�&TestInstance.test_args_kw.<locals>.BarNrErPrAr?r�r�irFrAr�c��eZdZd�ZdS)�&TestInstance.test_args_kw.<locals>.Bahc�"�||_||_dSrz)r�r�)rJr�r�s   r?r�z/TestInstance.test_args_kw.<locals>.Bah.__init__ms���������rANr�rPrAr?r�r�ls#������
�
�
�
�
rAr�c�(��eZdZe�d��ZdS)�$TestInstance.test_args_kw.<locals>.A�rbNr�r�s�r?r[r�qs ��������8�C��'�'�D�D�DrAr[rbc�@��eZdZe�ded������ZdS)�$TestInstance.test_args_kw.<locals>.Br�r�r�)rD�kwN)rMrNrOrr;rk)r�s�r?r�r�ws/��������8�C�e���r�
�
�
�;�;�;�D�D�DrAr�r�c�*��eZdZe�d���ZdS)�$TestInstance.test_args_kw.<locals>.CTrINr�r�s�r?r�r�~r�rAr�)rrcrkr�r�rk)
rJr�r[rZr�r�r�r�r�r�s
        @@r?�test_args_kwzTestInstance.test_args_kwds�����	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�
	(�	(�	(�	(�	(�	(�	(�	�	(�	(�	(�
�A�C�C��������2�&�&�&�	<�	<�	<�	<�	<�	<�	<�	�	<�	<�	<�
�A�C�C��������2�&�&�&�������2�&�&�&�	2�	2�	2�	2�	2�	2�	2�	�	2�	2�	2�
�A�C�C�������$��'�'�'�'�'rAc����Gd�d���G�fd�dt��}|��}|�t��5|jddd��dS#1swxYwYdS)Nc��eZdZdS)�*TestInstance.test_bad_default.<locals>.FooNrErPrAr?r�r��rFrAr�c�&��eZdZe���ZdS)�(TestInstance.test_bad_default.<locals>.ANr�r�s�r?r[r��s��������8�C�=�=�D�D�DrAr[)rr�r#rk)rJr[rZr�s   @r?�test_bad_defaultzTestInstance.test_bad_default�s����	�	�	�	�	�	�	�	�	!�	!�	!�	!�	!�	!�	!�	�	!�	!�	!�
�A�C�C��
�
�
�z�
*�
*�	�	�
�F�F�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s�A�A!�$A!c�b��Gd�d����fd�}|�t|��dS)Nc��eZdZdS)�'TestInstance.test_instance.<locals>.FooNrErPrAr?r�r��rFrAr�c�2��G�fd�dt��}dS)Nc�6��eZdZe�����ZdS)�4TestInstance.test_instance.<locals>.inner.<locals>.ANr�r�s�r?r[r��s"��������x���������rAr[�r)r[r�s �r?�innerz)TestInstance.test_instance.<locals>.inner�sA���
'�
'�
'�
'�
'�
'�
'�I�
'�
'�
'�
'�
'rA�r�r#)rJr�r�s  @r?�
test_instancezTestInstance.test_instance�sb���	�	�	�	�	�	�	�	�	'�	'�	'�	'�	'�	
���*�e�,�,�,�,�,rAN)	rMrNrOr�r�r�r�r�r�rPrAr?r�r�'su������A�A�A�.A�A�A�4	.�	.�	.�(�(�(�@	�	�	�-�-�-�-�-rAr�c�,�eZdZd�Zd�Zd�Zd�Zd�ZdS)�TestThisc��Gd�dt��}|��}|�|jd��|��}||_|�|j|��|�tt
|dd��dS)Nc�"�eZdZe��ZdS)�%TestThis.test_this_class.<locals>.FooN�rMrNrOr"�thisrPrAr?r�r����������4�6�6�D�D�DrAr�r�rb)rrcr�r�r#rl)rJr�r�r�s    r?r4zTestThis.test_this_class�s���	�	�	�	�	�)�	�	�	�
�C�E�E��������&�&�&��C�E�E�����������#�#�#����*�g�q�&�"�=�=�=�=�=rAc��Gd�dt��}|��}|��|_|�t|j|����dS)Nc�"�eZdZe��ZdS)�$TestThis.test_this_inst.<locals>.FooNr�rPrAr?r�r��r�rAr�)rr�rkr{)rJr�r�s   r?�test_this_instzTestThis.test_this_inst�sj��	�	�	�	�	�)�	�	�	�
�C�E�E�����������
�1�6�3�/�/�0�0�0�0�0rAc��Gd�dt��}Gd�d|��}|��}|��}||_||_|�|j|��|�|j|��dS)Nc�"�eZdZe��ZdS)�#TestThis.test_subclass.<locals>.FooN�rMrNrOr"rrPrAr?r�r�������������A�A�ArAr�c��eZdZdS)�#TestThis.test_subclass.<locals>.BarNrErPrAr?r�r��rFrAr�)rrrc�rJr�r�r�r�s     r?r}zTestThis.test_subclass�s���	�	�	�	�	�)�	�	�	�	�	�	�	�	�#�	�	�	�
�C�E�E���C�E�E�������������a� � � ������a� � � � � rAc��Gd�dt��}Gd�d|��}|��}|��}||_|�|j|��|�tt
|d|��dS)Nc�"�eZdZe��ZdS)�,TestThis.test_subclass_override.<locals>.FooNr�rPrAr?r�r��r�rAr�c�"�eZdZe��ZdS)�,TestThis.test_subclass_override.<locals>.BarNr�rPrAr?r�r��r�rAr�r)rrrcr�r#rlr�s     r?�test_subclass_overridezTestThis.test_subclass_override�s���	�	�	�	�	�)�	�	�	�	�	�	�	�	�#�	�	�	�
�C�E�E���C�E�E����������a� � � ����*�g�q�#�q�9�9�9�9�9rAc���Gd�dt��}|d|d���|d���g���}|�t��5dd	g|_ddd��dS#1swxYwYdS)
Nc�H�eZdZe��Zee����ZdS)�-TestThis.test_this_in_container.<locals>.TreeN)rMrNrOr(rlrr"�leavesrPrAr?�Treer��s,�������G�I�I�E��T�$�$�&�&�\�\�F�F�FrAr�r�r�r��buzz)rlr�r3r�)rr�r#r�)rJr��trees   r?�test_this_in_containerzTestThis.test_this_in_container�s���	"�	"�	"�	"�	"�9�	"�	"�	"��t�%���E�):�):�):�D�D�v�<N�<N�<N�(O�P�P�P��
�
�
�z�
*�
*�	!�	!��a�&�D�K�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!�	!�	!s�
A(�(A,�/A,N)rMrNrOr4r�r}r�r�rPrAr?r�r��s_������	>�	>�	>�1�1�1�!�!�!�:�:�:�!�!�!�!�!rAr�c�<�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	S)
�
TraitTestBasez+A best testing class for basic trait types.c��||j_dSrz)r~rl�rJrls  r?�assignzTraitTestBase.assign�s�������rAc��|SrzrPr�s  r?�coercezTraitTestBase.coerce�s���rAc���t|d��rR|jD]L}|�|��|�|jj|�|�����KdSdS)N�_good_values)�hasattrr�r�rcr~rlr�r�s  r?�test_good_valueszTraitTestBase.test_good_values�s|���4��(�(�	E��*�
E�
E�����E�"�"�"�� � �������U�1C�1C�D�D�D�D�	E�	E�
E�
ErAc��t|d��rD|jD]>}	|�t|j|���%#t
$rJ|���wxYwdSdS)N�_bad_values)r�rr�r#r��AssertionErrorr�s  r?�test_bad_valueszTraitTestBase.test_bad_values�s����4��'�'�	(��)�
(�
(��(��%�%�j�$�+�u�E�E�E�E��%�(�(�(�'�%�'�'�'�(����		(�	(�
(�
(s	�!=�Ac�t�t|d��r'|�|j|jj��dSdS�N�_default_value)r�rcrr~rlr�s r?�test_default_valuez TraitTestBase.test_default_value�sE���4�)�*�*�	B����T�0�$�(�.�A�A�A�A�A�	B�	BrAc�0�t|d���rt|d��r�d|jvr�|j���d}	d|_|j�d��|�d��|�|jjd��|�	��|�
��d|_|j�d��dS#d|_|j�d��wxYwdSdSdS)Nrr�rlTF)r�rr~rrJrgr�rcrlr�rrU)rJ�traits  r?rqzTraitTestBase.test_allow_none�s+���D�-�(�(�	.���n�-�-�	.���(�(�(��H�O�O�%�%�g�.�E�
.�#'�� �� �'�'��-�-�-����D�!�!�!�� � �����6�6�6��%�%�'�'�'��$�$�&�&�&�$)�� �� �'�'��-�-�-�-�-��$)�� �� �'�'��-�-�-�-����#	.�	.�	.�	.�)�(s
�A>C,�,#Dc�L�t|d��r|j|j_dSdSr)r�rr~rlr�s r?�tearDownzTraitTestBase.tearDowns/���4�)�*�*�	1�!�0�D�H�N�N�N�	1�	1rAN)rMrNrO�__doc__r�r�r�rrrqrrPrAr?r�r��s�������5�5�������E�E�E�(�(�(�B�B�B�.�.�.�(1�1�1�1�1rAr�c�"�eZdZe��ZdS)�AnyTraitN)rMrNrOrrlrPrAr?rr	s�������C�E�E�E�E�ErArc�B�eZdZe��ZdZdddgddidddgZgZdS)�AnyTraitTestNrc�tenrbr���?)rMrNrOrr~rr�rrPrAr?rrs=������
�(�*�*�C��N��%�"���r�{�E�4��D�L��K�K�KrArc�H�eZdZee��e��g��ZdS)�
UnionTraitN)rMrNrOr)r&rrlrPrAr?rrs.�������E�4�4�6�6�4�4�6�6�"�#�#�E�E�ErArc�:�eZdZed���ZeedgZgddgZdS)�UnionTraitTestr�r�T�rrN)	rMrNrOrr~r|�floatr�rrPrAr?rrs8������
�*�4�
5�
5�
5�C����%�L��t�R�.�K�K�KrArc�"�eZdZe��ZdS)�
CallableTraitN)rMrNrOr	rlrPrAr?rr#s�������H�J�J�E�E�ErArc�>�eZdZed����Zeed�gZgddgZdS)�CallableTraitTestc� �t|��Srz)r:�r�s r?r-zCallableTraitTest.<lambda>*s���Q���rAr�c� �t|��Srz)�printrs r?r-zCallableTraitTest.<lambda>+s��5��8�8�rAr3�N)	rMrNrOrr~r|r�r�rrPrAr?rr(s?������
�-�/�/�
0�
0�
0�C���!3�!3�4�L��q�"�+�K�K�KrArc�8�eZdZe��e��zZdS)�OrTraitN)rMrNrOrr(rlrPrAr?r#r#/s$�������D�F�F�W�W�Y�Y��E�E�ErAr#c�4�eZdZe��Zgd�ZgddgZdS)�OrTraitTest)TFrrrN)rMrNrOr#r~r�rrPrAr?r%r%4s/������
�'�)�)�C�'�'�'�L��t�R�.�K�K�KrAr%c�(�eZdZedd���ZdS)�IntTrait�ci������minN�rMrNrOrrlrPrAr?r'r';s"�������C������E�E�ErAr'c�V�eZdZe��ZdZddgZddgddiddddd	d
ddd
dddgZdS)�TestIntr(rb���rr�Nr�333333$@�333333$��10L�-10L�10.1�-10.1�10�-10i8���)rMrNrOr'r~rr�rrPrAr?r-r-@sa������
�(�*�*�C��N���9�L�
�	��	���
��
��
�
�����
���K�K�KrAr-c�$�eZdZed��ZdS)�	CIntTrait�5N�rMrNrOrrlrPrAr?r8r8Xs�������D��I�I�E�E�ErAr8c�L�eZdZe��ZdZgd�ZddgddiddddgZd	�ZdS)
�TestCIntr��r5r6rbrcg$�r/rrbr�Nrr3c� �t|��Srz�r|�rJ�ns  r?r�zTestCInt.coercec�
���1�v�v�
rA)	rMrNrOr8r~rr�rr�rPrAr?r<r<\sX������
�)�+�+�C��N�7�7�7�L��2�$����U�D�"�f�E�K�����rAr<c�(�eZdZedd���ZdS)�MinBoundCIntTraitr9r�r)Nr:rPrAr?rDrDgs"�������D��!����E�E�ErArDc�6�eZdZe��ZdZgd�Zgd�ZdS)�TestMinBoundCIntr�)r�g@�3)g������@r����g�N)rMrNrOrDr~rr�rrPrAr?rFrFks5������
�
�
�
�C��N� �=�=�L�$�$�$�K�K�KrArFc�$�eZdZed��ZdS)�	LongTraitr(N�rMrNrOrrlrPrAr?rJrJss�������D��H�H�E�E�ErArJc�T�eZdZe��ZdZddgZddgddiddddd	d
ddd
ddgZdS)�TestLongr(rbr.rr�Nrr/r0r5r6r1r2r3r4)rMrNrOrJr~rr�rrPrAr?rMrMxs^������
�)�+�+�C��N���9�L�
�	��	���
��
��
��
�
�����K�K�KrArMc�(�eZdZedd���ZdS)�MinBoundLongTraitr(r�r)NrKrPrAr?rOrO�s�������D���O�O�O�E�E�ErArOc�6�eZdZe��ZdZddgZddgZdS)�TestMinBoundLongr(r�rbr�r.N)rMrNrOrOr~rr�rrPrAr?rQrQ�s3������
�
�
�
�C��N��r�7�L��c�(�K�K�KrArQc�(�eZdZedd���ZdS)�MaxBoundLongTraitr�rb��maxNrKrPrAr?rSrS�s�������D���O�O�O�E�E�ErArSc�6�eZdZe��ZdZddgZddgZdS)�TestMaxBoundLongr�rb���r�r�N)rMrNrOrSr~rr�rrPrAr?rWrW�s3������
�
�
�
�C��N���8�L��r�(�K�K�KrArWc�$�eZdZed��ZdS)�
CLongTraitr9N�rMrNrOr
rlrPrAr?rZrZ�s�������E�#�J�J�E�E�ErArZc�L�eZdZe��ZdZgd�ZddgddiddddgZd	�ZdS)
�	TestCLongr�r=rrbr�Nrr3c� �t|��Srzr?r@s  r?r�zTestCLong.coerce�rBrA)	rMrNrOrZr~rr�rr�rPrAr?r]r]�sX������
�*�,�,�C��N�7�7�7�L��2�$����U�D�"�f�E�K�����rAr]c�(�eZdZedd���ZdS)�MaxBoundCLongTraitr9rbrTNr[rPrAr?r`r`�s"�������E�#�2����E�E�ErAr`c�6�eZdZe��ZdZgd�ZddgZdS)�TestMaxBoundCLongr�)rbr5g������$@g&@�11N)rMrNrOr`r~rr�rrPrAr?rbrb�s5������
�
�
�
�C��N�#�#�#�L���,�K�K�KrArbc�$�eZdZed��ZdS)�IntegerTraitr3N�rMrNrOrrlrPrAr?rere�s�������G�A�J�J�E�E�ErArec�,�eZdZe��ZdZd�ZdS)�TestIntegerr3c� �t|��Srzr?r@s  r?r�zTestInteger.coerce�rBrAN)rMrNrOrer~rr�rPrAr?rhrh�s3������
�,�.�.�C��N�����rArhc�(�eZdZedd���ZdS)�MinBoundIntegerTraitr�r�r)NrfrPrAr?rkrk��"�������G�A�1����E�E�ErArkc�2�eZdZe��ZdZdZddgZdS)�TestMinBoundIntegerr�)r�r�r�r.N)rMrNrOrkr~rr�rrPrAr?rnrn�s/������
�
�
 �
 �C��N��L��c�(�K�K�KrArnc�(�eZdZedd���ZdS)�MaxBoundIntegerTraitr3r�rTNrfrPrAr?rprp�rlrArpc�2�eZdZe��ZdZdZddgZdS)�TestMaxBoundIntegerr3)r�rXr�rbN)rMrNrOrpr~rr�rrPrAr?rrrr�s/������
�
�
 �
 �C��N��L��b�'�K�K�KrArrc�(�eZdZedd���ZdS)�
FloatTrait��X@�i@rTN)rMrNrOrrlrPrAr?rtrt�s"�������E�$�E�"�"�"�E�E�ErArtc
�R�eZdZe��ZdZgd�Zddgddiddddd	d
ddd
dg
ZdS)�	TestFloatru)rbr.r/r0rrbr�Nrr5r6r1r2r3r4g i@)rMrNrOrtr~rr�rrPrAr?rxrx�s]������
�*�,�,�C��N�)�)�)�L�
�	��	���
��
��
�
����
��K�K�KrArxc�(�eZdZedd���ZdS)�CFloatTraitz99.0rvrTN)rMrNrOrrlrPrAr?rzrzs"�������F�6�u�%�%�%�E�E�ErArzc�N�eZdZe��ZdZgd�Zddgddiddddd	gZd
�ZdS)�
TestCFloatru)rbrcg%@z10.0r5r6rrbr�Nrg33333i@z200.1c� �t|��Srz)r�rJrs  r?r�zTestCFloat.coerces
���Q�x�x�rA)	rMrNrOrzr~rr�rr�rPrAr?r|r|sZ������
�+�-�-�C��N�8�8�8�L��2�$����U�D�"�e�W�M�K�����rAr|c�$�eZdZed��ZdS)�ComplexTrait��X@�X�N)rMrNrOrrlrPrAr?r�r�s�������G�L�!�!�E�E�ErAr�c�F�eZdZe��ZdZgd�ZddddgddiddgZdS)	�TestComplexr�)
rbr.r/r0y$@y$@$@y$@$�y333333$@y333333$@333333$@y333333$@333333$�r1r2rrbr�N)rMrNrOr�r~rr�rrPrAr?r�r�sK������
�,�.�.�C�!�N����L��&�%�"���r�{�E�4�H�K�K�KrAr�c�$�eZdZed��ZdS)�
BytesTrait�stringN)rMrNrOrrlrPrAr?r�r�-��������E�)���E�E�ErAr�c�P�eZdZe��ZdZgd�Zddddddgdgddid	d
dgZd
S)�	TestBytesr�)s10s-10s10Ls-10Ls10.1s-10.1r�rbr.r/r0rrr�N�string)rMrNrOr�r~rr�rrPrAr?r�r�2sO������
�*�,�,�C��N�Q�Q�Q�L��s�D�%��b�T�E�7�U�B�K��PT�V^�_�K�K�KrAr�c�$�eZdZed��ZdS)�UnicodeTrait�unicodeN)rMrNrOr(rlrPrAr?r�r�;s�������G�I���E�E�ErAr�c
�T�eZdZe��ZdZgd�Zddddddgdgddid	d
g
Zd�Zd
S)�TestUnicoder�)
r5r6r1r2r3r4r!r��€s
bytestringrbr.r/r0rrr�Nc� �t|��Srzr1r~s  r?r�zTestUnicode.coerceHs���A���rA)	rMrNrOr�r~rr�rr�rPrAr?r�r�@sa������
�,�.�.�C��N�d�d�d�L��s�D�%��b�T�E�7�U�B�K��PT�U�K�����rAr�c�$�eZdZed��ZdS)�ObjectNameTrait�abcN)rMrNrOrrlrPrAr?r�r�Ls�������J�u���E�E�ErAr�c
��eZdZe��ZdZgd�Zddddddd	d
ddd
e��eg
Ze�	d��d
S)�TestObjectNamer�)rZ�gh�g9�g_�_G�a345_r3r!r��9g�!z#abczaj@�a.bza()za[0]N�þ)
rMrNrOr�r~rr�rMrrUrPrAr?r�r�Psw������
�/�
�
�C��N�9�9�9�L�	�
�
����
�
�
���������K���������rAr�c�$�eZdZed��ZdS)�DottedObjectNameTraitr�N)rMrNrOrrlrPrAr?r�r�gs��������U�#�#�E�E�ErAr�c�`�eZdZe��ZdZgd�Zgd�Ze�d��dS)�TestDottedObjectNamer�)r[zy.tz
y765.__repr__zos.path.join)r3uabc.€z_.@�.z.abczabc.z.abc.Nut.þN)	rMrNrOr�r~rr�rrUrPrAr?r�r�ksM������
�
�
!�
!�C��N�@�@�@�L�K�K�K�K���������rAr�c�"�eZdZe��ZdS)�TCPAddressTraitN)rMrNrOr!rlrPrAr?r�r�us�������J�L�L�E�E�ErAr�c�6�eZdZe��ZdZgd�Zgd�ZdS)�TestTCPAddress)�	127.0.0.1r))�	localhostr)z192.168.0.1r�)zwww.google.com�P))rr)r�rc)r�rjNN)rMrNrOr�r~rr�rrPrAr?r�r�ys6������
�/�
�
�C�%�N�T�T�T�L�H�H�H�K�K�KrAr�c�4�eZdZee����ZdS)�	ListTraitN�rMrNrOrrrlrPrAr?r�r��s!�������D�����K�K�E�E�ErAr�c�l�eZdZe��ZgZgdgeed����dgZdddgdgZ	d�Z
dS)�TestListr3rb�r3r�rZc�(�|�t|��}|Srz��listr�s  r?r�zTestList.coerce��������K�K�E��rAN)rMrNrOr�r~rr��ranger�rr�rPrAr?r�r��sc������
�)�+�+�C��N����T�T�%�%��)�)�_�_�f�5�L���3�x��%�K�����rAr�c��eZdZdS)r�NrErPrAr?r�r����������DrAr�c�6�eZdZeee����ZdS)�NoneInstanceListTraitN)rMrNrOrrr�rlrPrAr?r�r��s%�������D���#�����E�E�ErAr�c�p�eZdZe��ZgZe��e��gggZdge��dggZdS)�TestNoneInstanceListN)	rMrNrOr�r~rr�r�rrPrAr?r�r��sQ������
�
�
!�
!�C��N��S�U�U�C�C�E�E�N�B�'�L��6�C�C�E�E�4�=�)�K�K�KrAr�c�<�eZdZeeedz����ZdS)�InstanceListTraitz.FooN)rMrNrOrrrlrPrAr?r�r��s,�������D���(�V�+�,�,�-�-�E�E�ErAr�c�j�eZdZe��Zd�ZgZe��e��gggZddgdegdgZ	dS)�TestInstanceListc��|�|j���djjt
��dS�z2Test that the instance klass is properly assigned.rlN)r]r~r�_traitrLr�r�s r?�
test_klasszTestInstanceList.test_klass�s3���
�
�d�h�o�o�'�'��0�7�=�s�C�C�C�C�CrAr�r�N)
rMrNrOr�r~r�rr�r�rrPrAr?r�r��sp������
�
�
�
�C�D�D�D��N��S�U�U�C�C�E�E�N�B�'�L�
�
�	
�	�	����K�K�KrAr�c�J�eZdZee��e��z��ZdS)�UnionListTraitN)rMrNrOrrrrlrPrAr?r�r��s-�������D���������� � �E�E�ErAr�c�B�eZdZe��ZgZddgddggZddgdgZdS)�TestUnionListTraitTr3F�TrueN)rMrNrOr�r~rr�rrPrAr?r�r��s@������
�.�
�
�C��N��1�I��t�}�-�L��v�;��&�K�K�KrAr�c�>�eZdZee��dgdd���ZdS)�LenListTraitrr3r�)�minlen�maxlenNr�rPrAr?r�r��s.�������D�������A�a�0�0�0�E�E�ErAr�c	�t�eZdZe��ZdgZdgddgdgZdddgdgeed����gZ	d�Z
d	S)
�TestLenListrr3r�r�rbrZr�c�(�|�t|��}|Srzr�r�s  r?r�zTestLenList.coerce�r�rAN)rMrNrOr�r~rr�r�r�rr�rPrAr?r�r��sk������
�,�.�.�C��S�N��C�!�Q���(�L���3�x��b�$�$�u�u�Q�x�x�.�.�9�K�����rAr�c�<�eZdZeed���d���ZdS)�
TupleTraitTrI�r3r�N)rMrNrOr%rrlrPrAr?r�r��s/�������E�#�#��&�&�&�d�;�;�;�E�E�ErAr�c�F�eZdZe��ZdZdddggZgd�Zd�Zd�Z	dS)�TestTupleTraitr�rr3)rbr�rZrPNc�(�|�t|��}|Srz��tupler�s  r?r�zTestTupleTrait.coerce�������%�L�L�E��rAc���|�ttd��|�ttd���tt��t	��d���}dS�Nr��hellor�)r3r��r�r>r%rr
�rJrs  r?�test_invalid_argsz TestTupleTrait.test_invalid_args��U�����)�U�A�.�.�.����)�U�'��B�B�B��#�%�%�����8�8�8���rAN)
rMrNrOr�r~rr�rr�r�rPrAr?r�r��s[������
�*�,�,�C��N��$���$�L�/�/�/�K����
9�9�9�9�9rAr�c�$�eZdZed��ZdS)�LooseTupleTrait�r3r�r�N)rMrNrOr%rlrPrAr?r�r��r�rAr�c��eZdZe��ZdZddgdeed����ed��ddgZd	did
gZ	d�Z
d�Zd
S)
�TestLooseTupleTraitr�r�r3rr�r�)rZr�rPrbNc�(�|�t|��}|Srzr�r�s  r?r�zTestLooseTupleTrait.coercer�rAc���|�ttd��|�ttd���tt��t	��d���}dSr�r�r�s  r?r�z%TestLooseTupleTrait.test_invalid_argsr�rA)rMrNrOr�r~rr�r�r�rr�r�rPrAr?r�r��s�������
�/�
�
�C��N��1�#�t�U�U�5�5��8�8�_�_�e�e�G�n�n�h�PR�S�L��w��D�)�K����
9�9�9�9�9rAr�c�N�eZdZee��e��ddg���ZdS)�MultiTupleTraitr(�bottlesr�N)rMrNrOr%rrrlrPrAr?r�r�s5�������E�#�#�%�%������Z�0@�A�A�A�E�E�ErAr�c�2�eZdZe��ZdZddgZdZdS)�TestMultiTuple)r(r�)r3�a)r��b)rPrbr�)r3r�r�)r�r3)r3rZN)rMrNrOr�r~rr�rrPrAr?r�r�s/������
�/�
�
�C�%�N��y�)�L�C�K�K�KrAr��Traitc���G�fd�dt��}|��}|j�J�|d���}|j�J�dS)Nc�*��eZdZ�dd���ZdS)�(test_allow_none_default_value.<locals>.CNT)r�rJ�rMrNrOr�r�s�r?r�r�,s#��������E���6�6�6���rAr��r)rr)r�r�r�s`  r?�test_allow_none_default_valuer� so���7�7�7�7�7�7�7�I�7�7�7�	
����A��3�;�;�;�	
��D�	�	�	�A��3�;�;�;�;�;rAzTrait, default_valuerPr!c���G�fd�dt��}|��}t|j��t|��usJ�|j|ksJ�dS)Nc�$��eZdZ���ZdS)�test_default_value.<locals>.CNr�r�s�r?r�r�=s��������E�G�G���rAr��rr:r)r�r�r�r�s`   r?rr8s~���
�������I����	
����A����9�9��]�+�+�+�+�+�+��3�-������rAc����Gd�d|���G�fd�dt��}|��}t|j��t|��usJ�|j|ksJ�dS)zITest deprecated default_value=None behavior for Container subclass traitsc� ��eZdZd�fd�	Z�xZS)�2test_subclass_default_value.<locals>.SubclassTraitNc�L��t���|���dS)Nr�)rBr�)rJr�r+s  �r?r�z;test_subclass_default_value.<locals>.SubclassTrait.__init__Ns$����G�G���=��9�9�9�9�9rArz)rMrNrOr�rGr�s@r?�
SubclassTraitr�Ms=�������	:�	:�	:�	:�	:�	:�	:�	:�	:�	:rAr�c�$��eZdZ���ZdS)�&test_subclass_default_value.<locals>.CNr�)r�s�r?r�rQs��������M�O�O���rAr�Nr�)r�r�r�r�r�s    @r?�test_subclass_default_valuerFs����:�:�:�:�:��:�:�:��������I����	
����A����9�9��]�+�+�+�+�+�+��3�-������rAc�$�eZdZed��ZdS)�CRegExpTraitr!N)rMrNrOrrlrPrAr?rrZs�������G�C�L�L�E�E�ErArc�t�eZdZd�Ze��Zejd��Zdejd��gZ	gd�Z
dS)�TestCRegExpc�*�tj|��Srz)�re�compiler�s  r?r�zTestCRegExp.coerce`s���z�%� � � rAr!z\d+)�(NrPN)rMrNrOr�rr~rr	rr�rrPrAr?rr_sX������!�!�!��,�.�.�C��R�Z��_�_�N��J�B�J�v�.�.�/�L�!�/�/�K�K�KrArc�"�eZdZe��ZdS)�	DictTraitN)rMrNrOrrlrPrAr?rrjs�������D�F�F�E�E�ErArc�n�i}t��}||_d|d<||jksJ�|j|usJ�dS)Nr�rZ)rrl)r�r�s  r?�test_dict_assignmentrnsB��
�A����A��A�G�
�A�c�F����<�<�<�<��7�a�<�<�<�<�<�<rAc�<�eZdZee��ddi���ZdS)� UniformlyValueValidatedDictTraitr�r�)�value_traitr�N�rMrNrOrr(rlrPrAr?rrws,�������D�W�W�Y�Y�u�c�l�C�C�C�E�E�ErArc�B�eZdZe��ZddiZddd�gZddd�gZdS)�'TestInstanceUniformlyValueValidatedDictr�r��0�r�r�rN)rMrNrOrr~rr�rrPrAr?rr|sE������
*�
*�
,�
,�C��S�\�N���,�,�-�L��S�)�)�*�K�K�KrArc�@�eZdZede��iddi���ZdS)�#NonuniformlyValueValidatedDictTraitr�r3)�per_key_traitsr�N)rMrNrOrrrlrPrAr?rr�s0�������D�������u�a�j�I�I�I�E�E�ErArc�J�eZdZe��ZddiZddd�ddd�gZddd�gZdS)�*TestInstanceNonuniformlyValueValidatedDictr�r3rr�rrN)rMrNrOrr~rr�rrPrAr?rr�sO������
-�
-�
/�
/�C��Q�Z�N��c�*�*�A�a�,@�,@�A�L��s�+�+�,�K�K�KrArc�<�eZdZee��ddi���ZdS)�KeyValidatedDictTraitr�r�)�	key_traitr�NrrPrAr?rr�s,�������D�7�7�9�9�U�C�L�A�A�A�E�E�ErArc�B�eZdZe��ZddiZddd�gZddd�gZdS)�TestInstanceKeyValidatedDictr�r�rr�r�rN)rMrNrOrr~rr�rrPrAr?r r �sE������
�
�
!�
!�C��S�\�N���,�,�-�L��3�'�'�(�K�K�KrAr c�d�eZdZee��e��de��iddi���ZdS)�FullyValidatedDictTraitr�r3)rrrr�N)rMrNrOrr(rrlrPrAr?r#r#�sJ�������D��G�I�I��'�)�)��s�s�u�u�~��a�j�	
�
�
�E�E�ErAr#c�Z�eZdZe��ZddiZddd�ddd�gZddd�ddd�ddd�gZd	S)
�TestInstanceFullyValidatedDictr�r3rr�r�2rr!N)rMrNrOr#r~rr�rrPrAr?r%r%�sd������
!�
!�
#�
#�C��Q�Z�N��c�*�*�A�c�,B�,B�C�L��Q�'�'��S�)A�)A�1�QT�CU�CU�V�K�K�KrAr%c��Gd�dt��}|��}|jiksJ�|jiksJ�|j|jusJ�dS)zZCheck that the `{}` default value of the Dict traitlet constructor is
    actually copied.c�6�eZdZe��Ze��ZdS)�$test_dict_default_value.<locals>.FooN)rMrNrOr�d1�d2rPrAr?r�r)�s$������
�T�V�V��
�T�V�V���rAr�N)rr*r+)r�r�s  r?�test_dict_default_valuer,�sr�������i�����#�%�%�C��6�R�<�<�<�<��6�R�<�<�<�<��6��������rAc��eZdZd�Zd�ZdS)�TestValidationHookc���Gd�dt��}|��}d|_d|_|�t��5d|_ddd��n#1swxYwYd|_d|_dS)z2Verify that the early validation hook is effectivec�j�eZdZed��Zeddgd���Zed��d���ZdS)�4TestValidationHook.test_parity_trait.<locals>.Parityr�odd�evenr�rlc��|d}|jdkr|dzrtd���|jdkr|dzdkrtd���|S)Nrlr3r�zExpected an even numberr2rzExpected an odd number)�parityr#)rJr�rls   r?�_value_validatezDTestValidationHook.test_parity_trait.<locals>.Parity._value_validate�s^�� ��)���;�&�(�(�U�Q�Y�(�$�%>�?�?�?��;�%�'�'�U�Q�Y�!�^�^�$�%=�>�>�>��rAN)	rMrNrOrrlrr5r0r6rPrAr?�Parityr1�s]�������C��F�F�E��T�5�&�/��@�@�@�F�
�X�g�
�
�
�
��
�
�
�
rAr7r2r3r�Nr3)rr5rlr�r#)rJr7�us   r?�test_parity_traitz$TestValidationHook.test_parity_trait�s���	�	�	�	�	�Y�	�	�	�
�F�H�H��������
�
�
�z�
*�
*�	�	��A�G�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��������s�A�A�!Ac�B�Gd�dt��}|��}d|_|�t��5d|_ddd��n#1swxYwYd|_|�t��5d|_ddd��dS#1swxYwYdS)z@Verify that we can register the same validator to multiple namesc�d�eZdZed��Zed��Zedd��d���ZdS)�:TestValidationHook.test_multiple_validate.<locals>.OddEvenr3rr2r3c��|djdkr|ddzstd���|djdkr|ddzrtd���dSdS)Nr	r2rlr�zodd should be oddr3zeven should be even)r6r#r�s  r?�check_validzFTestValidationHook.test_multiple_validate.<locals>.OddEven.check_valid�sr���G�$�)�U�2�2�8�G�;L�q�;P�2�$�%8�9�9�9��G�$�)�V�3�3���8I�A�8M�3�$�%:�;�;�;�4�3�3�3rAN)rMrNrOrr2r3r0r>rPrAr?�OddEvenr<�sT�������#�a�&�&�C��3�q�6�6�D�
�X�e�V�
$�
$�
<�
<�%�
$�
<�
<�
<rAr?r�r�N)rr2r�r#r3)rJr?r8s   r?�test_multiple_validatez)TestValidationHook.test_multiple_validate�s8��
	<�
	<�
	<�
	<�
	<�i�
	<�
	<�
	<�
�G�I�I�����
�
�
�z�
*�
*�	�	��A�E�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	����
�
�
�z�
*�
*�	�	��A�F�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s#�A�A�A�?B�B�BN)rMrNrOr9r@rPrAr?r.r.�s2���������4����rAr.c�8�eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	dS)	�TestLinkc�`�Gd�dt��}|d���}|d���}t|df|df��}|�|j|j��d|_|�|j|j��d|_|�|j|j��d	S)
zHVerify two traitlets of the same type can be linked together using link.c�"�eZdZe��ZdS)�%TestLink.test_connect_same.<locals>.ANr+rPrAr?r[rE���������C�E�E�E�E�ErAr[�	r��rlr��N�rr,rcrl�rJr[rZr�r�s     r?�test_connect_samezTestLink.test_connect_same�s���	�	�	�	�	�	�	�	�	�
�A�A�J�J�J��
�A�A�J�J�J��
�!�W���7�|�,�,��	
�����!�'�*�*�*���������!�'�*�*�*���������!�'�*�*�*�*�*rAc��Gd�dt��}Gd�dt��}|d���}|d���}t|d	f|d
f��}|�|j|j��d|_|�|j|j��d|_|�|j|j��d
S)�JVerify two traitlets of different types can be linked together using link.c�"�eZdZe��ZdS)�'TestLink.test_link_different.<locals>.ANr+rPrAr?r[rPrFrAr[c�"�eZdZe��ZdS)�'TestLink.test_link_different.<locals>.BN�rMrNrOr�countrPrAr?r�rRrFrAr�rGr�rH�rTrlrTr�r�N)rr,rcrlrT�rJr[r�rZr�r�s      r?�test_link_differentzTestLink.test_link_different
s���	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�
�A�A�J�J�J��
�A�A�J�J�J��
�!�W���7�|�,�,��	
�����!�'�*�*�*���������!�'�*�*�*���������!�'�*�*�*�*�*rAc���Gd�dt��}|d���}|d���}t|df|df��}d|_|���d|_|�|j|j��|���|�|j|j��|xjd	z
c_|�|j|j��d
S)�9Verify two linked traitlets can be unlinked and relinked.c�"�eZdZe��ZdS)�$TestLink.test_unlink_link.<locals>.ANr+rPrAr?r[r[*rFrAr[rGr�rHrlr�r�r3N)rr,rl�unlink�assertNotEqualrcrKs     r?�test_unlink_linkzTestLink.test_unlink_link&s���	�	�	�	�	�	�	�	�	�
�A�A�J�J�J��
�A�A�J�J�J��
�!�W���7�|�,�,�����	���
�
�
�������A�G�Q�W�-�-�-�	�����������!�'�*�*�*�	���1���������!�'�*�*�*�*�*rAc�L��Gd�dt��}Gd�dt��}|d���}|d���}g��fd	�}|�|d
���fd�}|�|d��t|d
f|df��}|�d
����d���dd�=d|_|�d
����d���dd�=d|_|�d
����d���dd�=dS)z=Verify two linked traitlets have their callbacks called once.c�"�eZdZe��ZdS)�"TestLink.test_callbacks.<locals>.ANr+rPrAr?r[raArFrAr[c�"�eZdZe��ZdS)�"TestLink.test_callbacks.<locals>.BNrSrPrAr?r�rcDrFrAr�rGr�rHrUc�2����d��dS)NrZ�rU�r6r7r8�callback_counts   �r?�
a_callbackz+TestLink.test_callbacks.<locals>.a_callbackM�����!�!�#�&�&�&�&�&rArlc�2����d��dS)Nr�rerfs   �r?�
b_callbackz+TestLink.test_callbacks.<locals>.b_callbackRrirArTr!r�Nr��bar��ab)rrir,rc�joinrTrl)	rJr[r�rZr�rhrkr�rgs	        @r?�test_callbackszTestLink.test_callbacks=s����	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�
�A�A�J�J�J��
�A�A�J�J�J����	'�	'�	'�	'�	'�	
���*�g�.�.�.�	'�	'�	'�	'�	'�	
���*�g�.�.�.�
�!�W���7�|�,�,��	
�������0�0�#�6�6�6��1�1�1������������0�0�$�7�7�7��1�1�1������������0�0�$�7�7�7��1�1�1���rAc�^�Gd�dt��}|d���}|d���}t|df|dfd�d�f�	��}|�|jd
|jz��d|_|�|jd��d
|_|�|jd��dS)�Test transform link.c�"�eZdZe��ZdS)�!TestLink.test_tranform.<locals>.ANr+rPrAr?r[rslrFrAr[rGr�rHrlc��d|zS�Nr�rPrs r?r-z(TestLink.test_tranform.<locals>.<lambda>ss
��!�a�%�rAc�&�t|dz��S)Ng@r?rs r?r-z(TestLink.test_tranform.<locals>.<lambda>ss��SV�WX�[^�W^�S_�S_�rA)�	transformr�r�rbrIr�NrJrKs     r?�
test_tranformzTestLink.test_tranformhs���	�	�	�	�	�	�	�	�	�
�A�A�J�J�J��
�A�A�J�J�J��
�!�W���7�|���I_�I_�7`�a�a�a��	
�����!�a�g�+�.�.�.���������"�%�%�%���������!�$�$�$�$�$rAc��Gd�dt��}|��}t|df|df��}|�tt|dd��dS)Nc�^�eZdZe��Ze��Zed��d���ZdS)�4TestLink.test_link_broken_at_source.<locals>.MyClassr'c�$�|jdz|_dSru)r8r�rIs  r?�another_updatezCTestLink.test_link_broken_at_source.<locals>.MyClass.another_update������a�����rAN�rMrNrOrr�r'r-r}rPrAr?�MyClassr{��K����������A�����A�
�W�S�\�\�
(�
(��\�
(�
(�
(rAr�r�r'r��rr,r�r#rl�rJr��mc�ls    r?�test_link_broken_at_sourcez#TestLink.test_link_broken_at_source��r��	(�	(�	(�	(�	(�i�	(�	(�	(��W�Y�Y���"�c��R��I�&�&�����*�g�r�3��:�:�:�:�:rAc��Gd�dt��}|��}t|df|df��}|�tt|dd��dS)Nc�^�eZdZe��Ze��Zed��d���ZdS)�4TestLink.test_link_broken_at_target.<locals>.MyClassr�c�$�|jdz|_dSru)r8r'rIs  r?r}zCTestLink.test_link_broken_at_target.<locals>.MyClass.another_update�r~rANrrPrAr?r�r��r�rAr�r�r'r�r�r�s    r?�test_link_broken_at_targetz#TestLink.test_link_broken_at_target�r�rAN)
rMrNrOrLrWr^rorxr�r�rPrAr?rBrB�s~������+�+�+�,+�+�+�2+�+�+�.)�)�)�V%�%�%�0;�;�;�;�;�;�;�;rArBc�&�eZdZd�Zd�Zd�Zd�ZdS)�TestDirectionalLinkc�L�Gd�dt��}|d���}|d���}t|df|df��}|�|j|j��d|_|�|jd��d|_|�|jd��d	S)
zTVerify two traitlets of the same type can be linked together using directional_link.c�"�eZdZe��ZdS)�0TestDirectionalLink.test_connect_same.<locals>.ANr+rPrAr?r[r��rFrAr[rGr�rHrlr�rIN�rr+rcrlrKs     r?rLz%TestDirectionalLink.test_connect_same�s���	�	�	�	�	�	�	�	�	�
�A�A�J�J�J��
�A�A�J�J�J��
�a��\�A�w�<�8�8��	
�����!�'�*�*�*���������!�$�$�$���������!�$�$�$�$�$rAc�V�Gd�dt��}|d���}|d���}t|df|dfd���}|�|jd|jz��d	|_|�|jd
��d|_|�|jd	��dS)
rqc�"�eZdZe��ZdS)�,TestDirectionalLink.test_tranform.<locals>.ANr+rPrAr?r[r��rFrAr[rGr�rHrlc��d|zSrurPrs r?r-z3TestDirectionalLink.test_tranform.<locals>.<lambda>�s
��1�q�5�rAr�r�rbrINr�rKs     r?rxz!TestDirectionalLink.test_tranform�s���	�	�	�	�	�	�	�	�	�
�A�A�J�J�J��
�A�A�J�J�J��
�a��\�A�w�<���I�I��	
�����!�a�g�+�.�.�.���������"�%�%�%���������!�$�$�$�$�$rAc�r�Gd�dt��}Gd�dt��}|d���}|d���}t|d	f|d
f��}|�|j|j��d|_|�|jd��d|_|�|jd��d
S)rNc�"�eZdZe��ZdS)�2TestDirectionalLink.test_link_different.<locals>.ANr+rPrAr?r[r��rFrAr[c�"�eZdZe��ZdS)�2TestDirectionalLink.test_link_different.<locals>.BNrSrPrAr?r�r��rFrAr�rGr�rHrUrlrTr�rIN)rr+rcrlrTrVs      r?rWz'TestDirectionalLink.test_link_different�s���	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�
�A�A�J�J�J��
�A�A�J�J�J��
�a��\�A�w�<�8�8��	
�����!�'�*�*�*���������!�$�$�$���������!�$�$�$�$�$rAc���Gd�dt��}|d���}|d���}t|df|df��}d|_|���d|_|�|j|j��|���|�|j|j��|xjd	z
c_|�|j|j��d
S)rYc�"�eZdZe��ZdS)�/TestDirectionalLink.test_unlink_link.<locals>.ANr+rPrAr?r[r��rFrAr[rGr�rHrlr�r�r3N)rr+rlr\r]r,rcrKs     r?r^z$TestDirectionalLink.test_unlink_link�s���	�	�	�	�	�	�	�	�	�
�A�A�J�J�J��
�A�A�J�J�J��
�a��\�A�w�<�8�8�����	���
�
�
�������A�G�Q�W�-�-�-�	�����������!�'�*�*�*�	���1���������!�'�*�*�*�*�*rAN)rMrNrOrLrxrWr^rPrAr?r�r��sP������%�%�%�.%�%�%�.%�%�%�4+�+�+�+�+rAr�c��eZdZe��Zed��d���Zed��d���Ze��Z	d�Z
dS)�
Pickleabler�c��dSrzrPrIs  r?�
_i_changedzPickleable._i_changed	s���rAc��|dS)NrlrP)rJ�commits  r?�_i_validatezPickleable._i_validate	s���g��rAc��|���5d|_ddd��n#1swxYwY|�|jd��dS)Nr3r�)�hold_trait_notificationsr�rir�r�s r?r�zPickleable.__init__
	s���
�
*�
*�
,�
,�	�	��D�F�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	����T�_�c�2�2�2�2�2s�)�-�-N)rMrNrOrr�r-r�r0r�r'r�rPrAr?r�r��s����������A��W�S�\�\�
�
��\�
��X�c�]�]����]��	����A�3�3�3�3�3rAr�c���t��}ttjdz��D]O}tj||��}tj|��}|j|jksJ�|j|jksJ��Pd|_ttjdz��D]O}tj||��}tj|��}|j|jksJ�|j|jksJ��PdS)Nr3r�)r�r��pickle�HIGHEST_PROTOCOL�dumps�loadsr�r')r��protocol�p�c2s    r?�test_pickle_hastraitsr�	s������A��&�1�A�5�6�6�����L��H�%�%��
�\�!�_�_���t�q�s�{�{�{�{��t�q�s�{�{�{�{�{�
�A�C��&�1�A�5�6�6�����L��H�%�%��
�\�!�_�_���t�q�s�{�{�{�{��t�q�s�{�{�{�{�{�	�rAc���g�G�fd�dt��}|��}|���5|���5d|_|jdksJ��gksJ�	ddd��n#1swxYwYd|_|jdksJ�|���5d|_|jdksJ��gksJ�d|_|jdksJ��gksJ�	ddd��n#1swxYwYd|_|jdksJ��gksJ�	ddd��n#1swxYwY�dgksJ�	|���5d|_ddd��n#1swxYwYn#t$rYnwxYw|jdksJ�dS)	Nc�L��eZdZed��Zed��Z�fd�Zd�ZdS)�+test_hold_trait_notifications.<locals>.Testrc�6����||f��dSrzre)rJr6r7r8�changess    �r?r�z6test_hold_trait_notifications.<locals>.Test._a_changed'	s����N�N�C��:�&�&�&�&�&rAc�0�|dkrtd���|S)NrzOnly 0 is a valid value�r#�rJrlr	s   r?�_b_validatez7test_hold_trait_notifications.<locals>.Test._b_validate*	s����z�z� �!:�;�;�;��LrAN)rMrNrOrrZr�r�r�)r�s�r?�Testr�#	sW��������G�A�J�J���G�A�J�J��	'�	'�	'�	'�	'�	�	�	�	�	rAr�r3r�r�r�)rr�r)rr�rZr��	Exception)r�rr�s  @r?�test_hold_trait_notificationsr� 	s�����G�
�
�
�
�
�
�
�y�
�
�
�	
����A�	
�	#�	#�	%�	%���
�
'�
'�
)�
)�	!�	!��A�C��3�!�8�8�8�8��b�=�=�=�=�=�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!�����s�a�x�x�x�x�
�
'�
'�
)�
)�	!�	!��A�C��3�!�8�8�8�8��b�=�=�=�=��A�C��3�!�8�8�8�8��b�=�=�=�=�=�
	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!�����s�a�x�x�x�x��"�}�}�}�}�}�!������������������$�v�h�����
�
�
'�
'�
)�
)�	�	��A�C�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	����
�
�
���
�����3�!�8�8�8�8�8�8s��D#�A6�*D#�6A:	�:D#�=A:	�>+D#�)9C/�#D#�/C3	�3D#�6C3	�7D#�#D'�*D'�8E,�E �E,� E$�$E,�'E$�(E,�,
E9�8E9c�(�eZdZe��Zd�ZdS)�RollBackc�(�|rtd���|S)N�foobarr�r�s   r?�
_bar_validatezRollBack._bar_validateP	s���	'��X�&�&�&��rAN)rMrNrOrr�r�rPrAr?r�r�M	s.������

�#�%�%�C�����rAr�c��eZdZd�ZdS)�TestRollbackc�B�d�}|�t|��dS)Nc�&�td���dS)Nr3�r�)r�rPrAr?�assign_rollbackz4TestRollback.test_roll_back.<locals>.assign_rollbackX	s����O�O�O�O�O�OrAr�)rJr�s  r?�test_roll_backzTestRollback.test_roll_backW	s/��	�	�	�	
���*�o�6�6�6�6�6rAN)rMrNrOr�rPrAr?r�r�V	s#������7�7�7�7�7rAr�c�B�eZdZe��Ze��Zd�Zd�ZdS)�CacheModificationc��||_|Srzr;r�s   r?r�zCacheModification._bar_validateb	�������rAc��||_|Srzr�r�s   r?�
_foo_validatezCacheModification._foo_validatef	r�rAN)rMrNrOrr�r�r�r�rPrAr?r�r�^	sH������

�#�%�%�C�

�#�%�%�C��������rAr�c�F�td���td���dS)Nr3r;r�)r�rPrAr?�test_cache_modificationr�k	s*���!������!������rAc�(��eZdZe��Ze��Ze��Ze��Ze��Z	e��Z
e��Ze��Ze��Z
e��Ze��Ze��Ze��Zd�Z�fd�Z�xZS)�OrderTraitsc�4���fd�dD���j|<dS)z�check the value of all traits when each trait change is triggered

        This verifies that the values are not sensitive
        to dict ordering when loaded from kwargs
        c�2��i|]}|t�|����SrP)r�)�.0r�rJs  �r?�
<dictcomp>z'OrderTraits._notify.<locals>.<dictcomp>�	s%���K�K�K�q�q�'�$��"2�"2�K�K�KrA�abcdefghijklN)�notifiedrVs`   r?�_notifyzOrderTraits._notify�	s,���L�K�K�K�N�K�K�K��
�d���rAc�n��|�|j��t��jdi|��dSr�)rir�rBr�r�s  �r?r�zOrderTraits.__init__�	s<������T�\�*�*�*������"�"�6�"�"�"�"�"rA)rMrNrOrr�r(rZr�r�r��er�r��hr�r'�kr�r�r�rGr�s@r?r�r�p	s���������t�v�v�H���	�	�A���	�	�A���	�	�A���	�	�A���	�	�A���	�	�A���	�	�A���	�	�A���	�	�A���	�	�A���	�	�A���	�	�A�L�L�L�#�#�#�#�#�#�#�#�#rAr�c���d�dD���t��}|jiksJ�tdi���}�fd�dD��}|j|ksJ�dS)Nc��i|]}||��SrPrP)r�r�s  r?r�z+test_notification_order.<locals>.<dictcomp>�	s��&�&�&�!��A�&�&�&rAr�c���i|]}|���SrPrP)r�r�r�s  �r?r�z+test_notification_order.<locals>.<dictcomp>�	s���2�2�2�a�Q��2�2�2rArP)r�r�)r~�
notificationsr�s  @r?�test_notification_orderr��	sw���&�&�~�&�&�&�A�
�-�-�C��<�2�����
�
�
��
�
�C�2�2�2�2�>�2�2�2�M��<�=�(�(�(�(�(�(rAc�(�eZdZedd���ZdS)�ForwardDeclaredInstanceTrait�ForwardDeclaredBarTrIN)rMrNrOrrlrPrAr?r�r��	s$������#�#�$8�T�J�J�J�E�E�ErAr�c�(�eZdZedd���ZdS)�ForwardDeclaredTypeTraitr�TrIN)rMrNrOrrlrPrAr?r�r��	s$�������� 4��F�F�F�E�E�ErAr�c�6�eZdZeed����ZdS)� ForwardDeclaredInstanceListTraitr�N)rMrNrOrrrlrPrAr?r�r��	s*�������D�(�(�)=�>�>�?�?�E�E�ErAr�c�6�eZdZeed����ZdS)�ForwardDeclaredTypeListTraitr�N)rMrNrOrrrlrPrAr?r�r��	s*�������D�$�$�%9�:�:�;�;�E�E�ErAr�c��eZdZdS)r�NrErPrAr?r�r��	r�rAr�c��eZdZdS)�ForwardDeclaredBarSubNrErPrAr?r�r��	r�rAr�c�\�eZdZe��ZdZde��e��gZddeegZ	dS)� TestForwardDeclaredInstanceTraitNr�r�)
rMrNrOr�r~rr�r�r�rrPrAr?r�r��	sQ������
&�
&�
(�
(�C��N��,�,�.�.�0E�0E�0G�0G�H�L��!�/�1F�G�K�K�KrAr�c�\�eZdZe��ZdZdeegZdde��e��gZ	dS)�TestForwardDeclaredTypeTraitNr�r�)
rMrNrOr�r~rr�r�r�rrPrAr?r�r��	sQ������
"�
"�
$�
$�C��N��,�.C�D�L��!�/�/�1�1�3H�3H�3J�3J�K�K�K�KrAr�c��eZdZe��Zd�ZgZe��e��gggZ	e��e��ddgdegdgdgZ
dS)�TestForwardDeclaredInstanceListc��|�|j���djjt
��dSr��r]r~rr�rLr�r�s r?r�z*TestForwardDeclaredInstanceList.test_klass�	�4���
�
�d�h�o�o�'�'��0�7�=�?Q�R�R�R�R�RrAr�Nr�)rMrNrOr�r~r�rr�r�r�rrPrAr?r�r��	s�������
*�
*�
,�
,�C�S�S�S��N�	�	�	�	�4�4�6�6�7�
��L�
	����	�	�	�	�q�$�'��	��	
����K�K�KrAr�c�`�eZdZe��Zd�ZgZeegggZ	eedgde��gdgdgZ
dS)�TestForwardDeclaredTypeListc��|�|j���djjt
��dSr�r�r�s r?r�z&TestForwardDeclaredTypeList.test_klass�	r�rAr�r�N)rMrNrOr�r~r�rr�r�r�rrPrAr?r�r��	sv������
&�
&�
(�
(�C�S�S�S��N�	�2�3�
��L�
	�	�Q���	�	�	�	��	
����K�K�KrAr�c� �eZdZd�Zd�Zd�ZdS)�TestDynamicTraitsc��g|_dSrz)rOr�s r?rQzTestDynamicTraits.setUp
s
����
�
�
rAc�@�|j�|||f��dSrzrTrVs    r?rWzTestDynamicTraits.notify1
rXrAc��Gd�dt��}|��}|�t|d����|�t|d����|�t	�����|�t|d����|�t||f����|�t
�����|�t|d����|�t||f����|�|jj	|j	��|��}|�t|d����|�t|d����|�
|j��d|_|�t|j��d��d|_|�t|j��d��d	|_|�d
|jv��d|_|�d|jv��|�t"t$|dd
��|�t"t$|dd
��g|_|�
|jd���d|_d|_|�t|j��d��dS)Nc��eZdZdS)�,TestDynamicTraits.test_notify_all.<locals>.ANrErPrAr?r[r
rFrAr[r��yr)rrrarb)r�rrbrc)rrarcreTrfr�rh)rrkr��
add_traitsrr{rrcr+rMrirWr�rjrOrr�r#rl)rJr[rZr�s    r?rmz!TestDynamicTraits.test_notify_all
s���	�	�	�	�	�	�	�	�	�
�A�C�C�����G�A�s�O�O�+�,�,�,����G�A�s�O�O�+�,�,�,�	
���s�u�u����������3���(�(�(����
�1�q�d�+�+�,�,�,�	
���u�w�w����������3���(�(�(����
�1�q�d�+�+�,�,�,������-�q�z�:�:�:�
�A�C�C�����G�A�s�O�O�+�,�,�,����G�A�s�O�O�+�,�,�,�	
���$�,�'�'�'��������T�]�+�+�Q�/�/�/��������T�]�+�+�Q�/�/�/���������
�5�6�6�6�������(�D�M�9�:�:�:����*�g�q�#�|�D�D�D����*�g�q�#�|�D�D�D���
�	���$�,�t��4�4�4�����������T�]�+�+�Q�/�/�/�/�/rAN)rMrNrOrQrWrmrPrAr?r�r�

sA���������/�/�/�)0�)0�)0�)0�)0rAr�c��Gd�dt��}|��}d|_|jdksJ�|��}tjt��5|j}ddd��n#1swxYwY|d���}|jdksJ�dS)Nc�(�eZdZeddg��ZdS)�test_enum_no_default.<locals>.CrZr�N)rMrNrOrrrPrAr?r�r>
s!�������D�#�s������rAr�rZr�r�)rr�pytest�raisesr#)r�r�rs   r?�test_enum_no_defaultr	=
s��������I����	
����A�

�A�C��3�#�:�:�:�:�	����A�	��z�	"�	"���
�C��������������������	
��C����A��3�#�:�:�:�:�:�:s�A)�)A-�0A-c�b�Gd�dt��}|j���dksJ�|j���dksJ�|j���dksJ�|j���dksJ�|j���dksJ�dS)Nc�x�eZdZed��Zee��Zed��Ze	��Z
e��ZdS)�"test_default_value_repr.<locals>.Cztraitlets.HasTraitsrN)
rMrNrOr&rr�t2rrAr�lisrr�rPrAr?r�rO
sN�������D�&�'�'��
�T�)�_�_���G�A�J�J���d�f�f���D�F�F���rAr�z'traitlets.HasTraits'z'traitlets.traitlets.HasTraits'r�[]�{})rr�default_value_reprr
rArr�)r�s r?�test_default_value_reprrN
s��������I����
�3�!�!�#�#�'>�>�>�>�>��4�"�"�$�$�(I�I�I�I�I��3�!�!�#�#�s�*�*�*�*��5�#�#�%�%��-�-�-�-��3�!�!�#�#�t�+�+�+�+�+�+rAc��eZdZe��Zed��d���ZdZed��Z	ed��d���Z
ed��ed�����Z
dZed��Zed��ed	�����Zd
S)�TransitionalClassr�c��tSrz)rr�s r?�
_d_defaultzTransitionalClass._d_defaulta
s�� � rAFr�calls_superc��dSrirPr�s r?�_calls_super_defaultz&TransitionalClass._calls_super_defaulth
s���rrAc��||_dSrz)�parent_superrIs  r?�_calls_super_changedz&TransitionalClass._calls_super_changedl
s��#����rA�	overridesc��||_dSrz)�parent_overriderIs  r?�_overrides_changedz$TransitionalClass._overrides_changedt
s�� &����rAN)rMrNrOrr�r*rrrrrr-r.rrrr rPrAr?rr]
s�����������A��W�S�\�\�!�!��\�!��L��'�!�*�*�K��W�]��������
�W�]����#�#��^���#��O����
�
�I��W�[����&�&��^���&�&�&rArc�2��eZdZd�ZdZ�fd�ZdZd�Z�xZS)�SubClassc��tSrz)r"r�s r?rzSubClass._d_default{
s���rAFc�\��d|_t���|||��dSr+)�subclass_superrBr)rJr6r7r8r+s    �r?rzSubClass._calls_super_changed�
s-���"���
���$�$�T�3��4�4�4�4�4rAc��d|_dSr+)�subclass_overriderVs    r?r zSubClass._overrides_changed�
s��!%����rA)	rMrNrOrr%rr'r rGr�s@r?r"r"z
se�����������N�5�5�5�5�5���&�&�&�&�&�&�&rAr"c��t��}d|_|jsJ�|jsJ�d|_|jsJ�|jrJ�|jtusJ�dS�Nr�)r"rrr%rr'rr��r~s r?�test_subclass_compatr+�
sn��
�*�*�C��C�O������������C�M�� � � � ��"�"�"�"��5�H������rAc�N�eZdZdZe��Zed��d���ZdS)�DefinesHandlerFr	c��d|_dSr+)�
parent_calledrIs  r?�handlerzDefinesHandler.handler�
s��!����rAN)rMrNrOr/rr	r-r0rPrAr?r-r-�
sH�������M��G�I�I�E��W�W���"�"���"�"�"rAr-c�:�eZdZdZed��d���ZdS)�OverridesHandlerFr	c��d|_dSr+��child_calledrIs  r?r0zOverridesHandler.handler�
��� ����rAN)rMrNrOr5r-r0rPrAr?r2r2�
�=�������L��W�W���!�!���!�!�!rAr2c�T�t��}d|_|jsJ�|jrJ�dSr))r2r	r5r/r*s r?�test_subclass_override_observerr9�
s8��
�
�
�C��C�I������� � � � � � rAc��eZdZdZd�ZdS)�DoesntRegisterHandlerFc��d|_dSr+r4rIs  r?r0zDoesntRegisterHandler.handler�
s�� ����rAN)rMrNrOr5r0rPrAr?r;r;�
s(�������L�!�!�!�!�!rAr;c�T�t��}d|_|jrJ�|jrJ�dS)zISubclass that overrides observer and doesn't re-register unregisters bothr�N)r;r	r5r/r*s r?�%test_subclass_override_not_registeredr>�
s8��
�
!�
!�C��C�I������� � � � � � rAc�:�eZdZdZed��d���ZdS)�AddsHandlerFr	c��d|_dSr+r4rIs  r?�
child_handlerzAddsHandler.child_handler�
r6rAN)rMrNrOr5r-rBrPrAr?r@r@�
r7rAr@c�T�t��}d|_|jsJ�|jsJ�dSr))r@r	r5r/r*s r?�test_subclass_add_observerrD�
s6��
�-�-�C��C�I������������rAc�H��Gd�dt��}|��}i��fd�}|�|ddh���d|_�djdksJ��djdksJ�d	|_�djdksJ��djd	ksJ�Gd
�d��}|�||ddh�����d|_�djdksJ��djdksJ�d
|_�djdksJ��djd
ksJ�dS)Nc�6�eZdZe��Ze��ZdS)�!test_observe_iterables.<locals>.CN)rMrNrOrr�r(�srPrAr?r�rG�
s$�������G�I�I���G�I�I���rAr�c���|�d<dS)NrKrP)rK�recordeds �r?�recordz&test_observe_iterables.<locals>.record�
s���#�����rAr�rH)�namesr�rK�hic� �eZdZd�Zd�Zd�ZdS)�+test_observe_iterables.<locals>.MyContainerc��||_dSrz��	container)rJrRs  r?r�z4test_observe_iterables.<locals>.MyContainer.__init__�
s
��&�D�N�N�NrAc�*�t|j��Srz)�iterrRr�s r?�__iter__z4test_observe_iterables.<locals>.MyContainer.__iter__�
s�����'�'�'rAc��||jvSrzrQ)rJrs  r?�__contains__z8test_observe_iterables.<locals>.MyContainer.__contains__�
s���$�.�(�(rAN)rMrNrOr�rUrWrPrAr?�MyContainerrO�
sA������	'�	'�	'�	(�	(�	(�	)�	)�	)�	)�	)rArXrb�ok)rr-r�r6r8rH)r�r�rKrXrJs    @r?�test_observe_iterablesrZ�
s���������I����	
����A��H�$�$�$�$�$��I�I�f�S�#�J�I�'�'�'�
�A�C��H��"�c�)�)�)�)��H��!�Q�&�&�&�&�
�A�C��H��"�c�)�)�)�)��H��!�T�)�)�)�)�)�)�)�)�)�)�)�)��I�I�f�K�K��c�
�3�3�I�4�4�4�
�A�C��H��"�c�)�)�)�)��H��!�R�'�'�'�'�
�A�C��H��"�c�)�)�)�)��H��!�T�)�)�)�)�)�)rAc��Gd�d��}Gd�dt|��}|ddddd	�
��}|jdksJ�t|d��rJ�t|d��rJ�|jd
ksJ�|jdd	d�ksJ�dS)Nc��eZdZd�ZdS)�&test_super_args.<locals>.SuperRecorderc�"�||_||_dSrz)�
super_args�super_kwargs)rJrDrEs   r?r�z/test_super_args.<locals>.SuperRecorder.__init__�
s��"�D�O� &�D���rANr�rPrAr?�
SuperRecorderr]�
s#������	'�	'�	'�	'�	'rArac�"�eZdZe��ZdS)�'test_super_args.<locals>.SuperHasTraitsN)rMrNrOrr�rPrAr?�SuperHasTraitsrc�
��������G�I�I���rArd�a1�a2rbr�r�)r�r�r�r�r�)rfrgr�)rr�r�r_r`)rardr~s   r?�test_super_argsrh�
s���'�'�'�'�'�'�'�'�
������M�����.��t�r�Q�#�
6�
6�
6�C��5�A�:�:�:�:��s�C� � � � � ��s�C� � � � � ��>�\�)�)�)�)���R�c�2�2�2�2�2�2�2�2rAc���Gd�dt��}dg}t|��5|dd���}ddd��n#1swxYwY|jdksJ�t|d��rJ�dS)Nc�"�eZdZe��ZdS)�+test_super_bad_args.<locals>.SuperHasTraitsN)rMrNrOrrZrPrAr?rdrkrerArdzPassing unrecognized argumentsr3r�r�r�)rr4rZr�)rdr�r~s   r?�test_super_bad_argsrls������������
*�*�A�	�1�	�	�'�'��n�q�A�&�&�&��'�'�'�'�'�'�'�'�'�'�'����'�'�'�'��5�A�:�:�:�:��s�C� � � � � � � s�A�A�Ac��Gd�dt��}Gd�d|��}Gd�d|��}Gd�d||��}Gd	�d
||��}|��jdksJ�|��jdksJ�|��jdksJ�|��jdksJ�|��jdksJ�|��jdksJ�dS)
z%Verify that default values follow mroc�(�eZdZed��ZdZdS)�test_default_mro.<locals>.Base�baseN�rMrNrOr(r	�attrrPrAr?�Baseros ���������������rArsc��eZdZdS)�test_default_mro.<locals>.ANrErPrAr?r[ru��������rAr[c�(�eZdZed��ZdZdS)�test_default_mro.<locals>.Br�NrqrPrAr?r�rxs ���������������rAr�c��eZdZdS)�test_default_mro.<locals>.ABNrErPrAr?�ABrzrvrAr{c��eZdZdS)�test_default_mro.<locals>.BANrErPrAr?�BAr}!rvrAr~rpN)rr	rr)rsr[r�r{r~s     r?�test_default_mrorsv�������y����
�
�
�
�
�D�
�
�
������D����
�
�
�
�
�Q��
�
�
�
�
�
�
�
�Q��
�
�
�
�1�3�3�9�������1�3�3�8�v�����
�2�4�4�:������
�2�4�4�9������
�2�4�4�:������
�2�4�4�9�������rAc�F�Gd�dt��}|dd���}dS)Nc��eZdZd�ZdS)�!test_cls_self_argument.<locals>.Xc��dSrzrP)�_X__self�clsrJs   r?r�z*test_cls_self_argument.<locals>.X.__init__.s���DrANr�rPrAr?�Xr�-s#������	�	�	�	�	rAr�)r�rJr�)r�r�s  r?�test_cls_self_argumentr�,sF�������I����	
��d�����A�A�ArAc�j�Gd�dt��}d�|_|��}|jdksJ�dS)Nc�*�eZdZed��Zd�ZdS)� test_override_default.<locals>.C�hard defaultc��dS�Nzdefault methodrPr�s r?�
_a_defaultz+test_override_default.<locals>.C._a_default8s��#�#rAN)rMrNrOr(rZr�rPrAr?r�r�5s2�������G�N�#�#��	$�	$�	$�	$�	$rAr�c��dS�N�
overriddenrPr�s r?r-z'test_override_default.<locals>.<lambda>;����rAr��rr�rZ�r�r�s  r?�test_override_defaultr�4s\��$�$�$�$�$�I�$�$�$�-�,�A�L�	����A��3�,������rAc�j�Gd�dt��}d�|_|��}|jdksJ�dS)Nc�L�eZdZed��Zed��d���ZdS)�*test_override_default_decorator.<locals>.Cr�rZc��dSr�rPr�s r?r�z5test_override_default_decorator.<locals>.C._a_defaultD���#�#rAN�rMrNrOr(rZr*r�rPrAr?r�r�A�D�������G�N�#�#��	�����	$�	$�
��	$�	$�	$rAr�c��dSr�rPr�s r?r-z1test_override_default_decorator.<locals>.<lambda>Hr�rAr�r�r�s  r?�test_override_default_decoratorr�@s\��$�$�$�$�$�I�$�$�$�-�,�A�L�	����A��3�,������rAc�j�Gd�dt��}|��}d�|_|jdksJ�dS)Nc�L�eZdZed��Zed��d���ZdS)�)test_override_default_instance.<locals>.Cr�rZc��dSr�rPr�s r?r�z4test_override_default_instance.<locals>.C._a_defaultQr�rANr�rPrAr?r�r�Nr�rAr�c��dSr�rPr�s r?r-z0test_override_default_instance.<locals>.<lambda>Vr�rAr�r�r�s  r?�test_override_default_instancer�Ms\��$�$�$�$�$�I�$�$�$�	
����A�,�,�A�L��3�,������rAc���ddlm}Gd�dt��}|d���}|jdksJ�||��}d|_|jdksJ�|jdksJ�dS)Nr)�copyc�"�eZdZe��ZdS)�test_copy_HasTraits.<locals>.CNr$rPrAr?r�r�]s�������C�E�E���rAr�r3r�r�)r�rrZ)r�r�r��ccs    r?�test_copy_HasTraitsr�Zs��������������I����	
��A����A��3�!�8�8�8�8�	
��a���B��B�D�
�4�1�9�9�9�9��3�!�8�8�8�8�8�8rAc���t|t��r|}n|d���}t|t��r|j}n|j}t|��t
urqt
|t��r\tj	|��5||��}|�
t��|��ddd��dS#1swxYwYdS||��}||ksJ�dS)zRun a test of trait.from_stringTrIN)r{r$r��from_string_list�from_stringr:�
issubclassr�rrr0rR)�	traittyperH�expectedr	�castrls      r?�_from_string_testr�is3���)�Y�'�'�+�����	�T�*�*�*���!�T���!��%���� ���H�~�~����*�X�y�"A�"A��
�]�8�
$�
$�	9�	9��D��G�G�E��N�N�.�0�0�%�8�8�8�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9�	9����	9�	9�	9�	9�	9�	9���Q������ � � � � � s�.C�C�
Czs, expected))�xyzr��r�r�)z"xx"�xx)z'abc'r���NoneNc�2�tt||��dSrz)r�r(�rHr�s  r?�test_unicode_from_stringr�|���
�g�q�(�+�+�+�+�+rAc�2�tt||��dSrz)r�rr�s  r?�test_cunicode_from_stringr��s��
�h��8�,�,�,�,�,rA))r�sxyz)r��1)zb"xx"sxx)zb'abc'sabcr�c�2�tt||��dSrz)r�rr�s  r?�test_bytes_from_stringr�����
�e�Q��)�)�)�)�)rAc�2�tt||��dSrz)r�r
r�s  r?�test_cbytes_from_stringr��s��
�f�a��*�*�*�*�*rAr�)r�r3)�123�{z2.0r�c�2�tt||��dSrz)r�rr�s  r?�test_int_from_stringr��r�rA)r�g�?)z123.5g�^@)z2.5g@c�2�tt||��dSrz)r�rr�s  r?�test_float_from_stringr��r�rA)z1+2jy�?@c�2�tt||��dSrz)r�rr�s  r?�test_complex_from_stringr��s���g�q�(�+�+�+�+�+rA)�trueT)�TRUET)r�T)rF)�FalseF)�falseFz1.0c�2�tt||��dSrz)r�rr�s  r?�test_bool_from_stringr��s���d�A�x�(�(�(�(�(rArr�z{1: 2}r�z{"key": "value"}rrlc�2�tt||��dSrz)r�rr�s  r?�test_dict_from_stringr��s���d�A�x�(�(�(�(�(rAr�[1, 2, "x"]�r3r�r�r�c�2�tt||��dSrz�r�rr�s  r?�test_list_from_stringr��s���d�A�x�(�(�(�(�(rAzs, expected, value_trait)r�r&rGr�TrIFc�B�tt|��||��dSrzr��rHr�rs   r?�test_list_items_from_stringr��s$���d�;�'�'��H�5�5�5�5�5rA>r�r3r�z{1, 2, "x"}c�2�tt||��dSrz�r�r r�s  r?�test_set_from_stringr��s���c�1�h�'�'�'�'�'rA>r3r�r�c�B�tt|��||��dSrzr�r�s   r?�test_set_items_from_stringr�s$���c�+�&�&��8�4�4�4�4�4rA)rrP)z()rP)r�r�)z(1, 2, "x")r�)r�r�c�2�tt||��dSrz�r�r%r�s  r?�test_tuple_from_stringr�s���e�Q��)�)�)�)�)rAzs, expected, value_traits)r�rzc�6�tt|�||��dSrzr�)rHr��value_traitss   r?�test_tuple_items_from_stringr� s!���e�\�*�A�x�8�8�8�8�8rA)r�r�)�
mod.submodr�znot an identifierr�c�2�tt||��dSrz)r�rr�s  r?�test_object_from_stringr�.s���&��8�4�4�4�4�4rA)z127.0.0.1:8000)r�i@)zhost.tld:80)zhost.tldr�z
host:notaportr�c�2�tt||��dSrz)r�r!r�s  r?�test_tcp_from_stringr�<s���j�!�X�.�.�.�.�.rA)rrc�v�ttt��t��g��||��dSrz)r�r)rr(r�s  r?�*test_union_of_list_and_unicode_from_stringr�Js1��
�e�T�V�V�W�Y�Y�/�0�0�!�X�>�>�>�>�>rA)z1.5g�?c�v�ttt��t��g��||��dSrz)r�r)rrr�s  r?�'test_union_of_int_and_float_from_stringr�Rs1��
�e�S�U�U�E�G�G�,�-�-�q�(�;�;�;�;�;rAzs, expected, allow_none)r�NTc�z�ttt��t��g|���||��dS)NrI)r�r)rr)rHr�rJs   r?�'test_union_of_list_and_dict_from_stringr�Zs6��
�e�T�V�V�T�V�V�,��D�D�D�a��R�R�R�R�RrAc�j�tt��}|D]v}tt|��}|�d��sJt	|t
��r5t
|t��r |tjvrt|�d�����wtjD]}||vrt|�d�����dS)z7Verify all trait types are added to `traitlets.__all__`r�z not in __all__z should be removed from __all__N)
�dirr/r��
startswithr{r:r�r$�__all__�
ValueError)rLr6rls   r?�test_all_attributer�bs����	�N�N�E��;�;���	�4�(�(�����s�#�#�	;�
�5�$�(?�(?�	;�J�u�V_�D`�D`�	;��9�,�,�,� �D�!9�!9�!9�:�:�:���!�G�G���u�����E�E�E�F�F�F��G�GrA)�rr�r�unittestrrr/rrrrrr	r
rrr
rrrrrrrrrrrrrrrrrrr r!r"r#r$r%r&r'r(r)r*r+r,r-r.r0�traitlets.utilsr2�	_warningsr4r@rCrRrUr r6rLr�r�rAr�r�r�rrrrrrr#r%r'r-r8r<rDrFrJrMrOrQrSrWrZr]r`rbrerhrkrnrprrrtrxrzr|r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r��mark�parametrizer��setrrrrrrrrrrrr r#r%r,r.rBr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r	rrr"r+r-r2r9r;r>r@rDrZrhrlrr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rPrAr?�<module>r�s���$�$��
�
�
�	�	�	�	�������
�
�
�
�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�.�^)�(�(�(�(�(�(�(�(�(�(�(�3�3�3�+�+�+�+�+�I�+�+�+�#�#�#�#�#�)�#�#�#�J�J�J�J�J�H�J�J�J�Z).�).�).�).�).�X�).�).�).�X+�+�+�+�+��+�+�+�"@#�@#�@#�@#�@#�(�@#�@#�@#�F}#�}#�}#�}#�}#�8�}#�}#�}#�@p(�p(�p(�p(�p(�H�p(�p(�p(�pA*�A*�A*�A*�A*�x�A*�A*�A*�Hp-�p-�p-�p-�p-�8�p-�p-�p-�f7!�7!�7!�7!�7!�x�7!�7!�7!�t21�21�21�21�21�H�21�21�21�j�����y����
�����=����$�$�$�$�$��$�$�$�
!�!�!�!�!�]�!�!�!������I����
�����
���������i����
!�!�!�!�!�-�!�!�!������y����
�����m����0�����	���������}���������	����%�%�%�%�%�x�%�%�%������	����
�����}����0�����	���������}���������	���������}������������������
������������������	���������9���������(���������9���������-���������9���������-����#�#�#�#�#��#�#�#�
�����
����.&�&�&�&�&�)�&�&�&�
	�	�	�	�	��	�	�	�"�"�"�"�"�9�"�"�"�
I�I�I�I�I�-�I�I�I�(���������
`�`�`�`�`�
�`�`�`������9����
	�	�	�	�	�-�	�	�	������i���������]����.$�$�$�$�$�I�$�$�$� � � � � �=� � � ������i����I�I�I�I�I�]�I�I�I������	����
�����}����	�	�	�	�	�	�	�	� � � � � �I� � � �
*�*�*�*�*�=�*�*�*�.�.�.�.�.�	�.�.�.�
�����}����*!�!�!�!�!�Y�!�!�!�
'�'�'�'�'��'�'�'�1�1�1�1�1�9�1�1�1�
�����-����<�<�<�<�<��<�<�<�
9�9�9�9�9�]�9�9�9�&�����i����
9�9�9�9�9�-�9�9�9�&B�B�B�B�B�i�B�B�B�
D�D�D�D�D�]�D�D�D�������
�����
�
�
�
�
�
�
�
������
�B�Z�%���s�C�C�E�E�l�T�2�J��!��w�PR�m�T��� � �	�� ������
�B�Z�%���s�C�C�E�E�l�+���
 �
 �	��
 � �����9����
"�"�"�"�"�-�"�"�"������	�������D�D�D�D�D�y�D�D�D�
+�+�+�+�+�m�+�+�+�J�J�J�J�J�)�J�J�J�
-�-�-�-�-��-�-�-�B�B�B�B�B�I�B�B�B�
)�)�)�)�)�=�)�)�)������i����W�W�W�W�W�]�W�W�W� � � �1�1�1�1�1��1�1�1�hb;�b;�b;�b;�b;�x�b;�b;�b;�J^+�^+�^+�^+�^+�(�^+�^+�^+�B3�3�3�3�3��3�3�3�(
�
�
� *�*�*�Z�����y����7�7�7�7�7�8�7�7�7�
�
�
�
�
�	�
�
�
����
#�#�#�#�#�)�#�#�#�>)�)�)�K�K�K�K�K�9�K�K�K�
G�G�G�G�G�y�G�G�G�
@�@�@�@�@�y�@�@�@�
<�<�<�<�<�9�<�<�<�	�	�	�	�	�	�	�	�	�	�	�	�	�.�	�	�	�H�H�H�H�H�}�H�H�H�L�L�L�L�L�=�L�L�L������m����0�����-����:00�00�00�00�00��00�00�00�f���",�,�,�&�&�&�&�&�	�&�&�&�:
&�
&�
&�
&�
&� �
&�
&�
&� ���"�"�"�"�"�Y�"�"�"�!�!�!�!�!�~�!�!�!�!�!�!�!�!�!�!�!�N�!�!�!�!�!�!�!�!�!�!�!�.�!�!�!����%*�%*�%*�P3�3�3�"!�!�!����8���	�	�	�
�
�
�
�
�
����!�!�!�&�����R�R�R���,�,�	��,������R�R�R���-�-�	��-������X�X�X���*�*�	��*������X�X�X���+�+�	��+������	�:���,��
�0C�^�T���,�,�	��,������	�:��
�$4�l�N�S���*�*�	��*������	�j�������
�
�
�,�,�
�
�,������������	�
���	���)�)���)������	
�r�
�	�j��	�A�q�6��	�e�W�-�.�	�j���
�
�
�)�)�
�
�)������	
�r�
�	����$�

�s��c�3�Z� �
��4��	���)�)���)������	���)�)�)�W�W�Y�Y�/�

��
�G�G�I�I�&�

�s��c�3�Z�����+�
��D�6�7�7�d�3�3�3�4�
��F�8�W�W��6�6�6�7��	�	�6�6�	�	�6������	
�s�s�u�u�
�	����$�	����$�

�s��c�3�Z� �
��4���	�	�(�(�	�	�(������	���)�)�)�W�W�Y�Y�/�

��
�G�G�I�I�&�

�s��c�3�Z�����+�
��D�6�7�7�d�3�3�3�4�	���5�5���5��������$�$�

�s��Z� �
��4��
�
�
�*�*�
�
�*������	���)�g�g�i�i�����G�G�I�I�%F�G�

��
�W�W�Y�Y�K�(�

�s��Z�'�'�)�)��-�
��9�w�w�%�8�8�8�9�:�
��7�W�W��5�5�5�6�7��	�	�9�9�	�	�9�������$�	�j�)����	�	�5�5�	�	�5������/�)�	�*�%�	�j�!���	�	�/�/�	�	�/������
�B�Z�����?�?�	��?������
�|����<�<�	��<������
�B����r�5�)�F�J��+F�H\�]���S�S�	��S�G�G�G�G�GrA

Youez - 2016 - github.com/yon3zu
LinuXploit