Sindbad~EG File Manager

Current Path : /proc/2568807/root/usr/local/lib/python3.12/test/test_ttk/__pycache__/
Upload File :
Current File : //proc/2568807/root/usr/local/lib/python3.12/test/test_ttk/__pycache__/test_widgets.cpython-312.pyc

�

*Μg@��f�ddlZddlZddlmZmZddlmZmZddlZddlm	Z	ddl
mZmZm
Z
mZmZmZddlmZmZmZmZmZed�Gd�d	e�ZGd
�deej0�ZGd�d
ee�Zee�Gd�deej0��Zee�Gd�deej0��ZGd�de�Zee�Gd�deej0��Zee�Gd�deej0��Zee�Gd�deej0��Z eee�Gd�deej0��Z!eee�Gd�de!ej0��Z"eee�Gd�deej0��Z#ee�Gd �d!eej0��Z$Gd"�d#eej0�Z%ee�Gd$�d%eej0��Z&ee�Gd&�d'eej0��Z'ejPejRd(k(d)�ee�Gd*�d+eej0���Z*ee�Gd,�d-eej0��Z+eee�Gd.�d/e!ej0��Z,ee�Gd0�d1eej0��Z-ee�Gd2�d3eej0��Z.ee�Gd4�d5eej0��Z/Gd6�d7eej0�Z0ee e"e!eeee%e+e#e'e$e&e*e.e/e,e-ee0fZ1e2d8k(rejf�yy)9�N)�ttk�TclError)�requires�
gc_collect)�
MockTclObj)�AbstractTkTest�requires_tk�
tk_version�get_tk_patchlevel�simulate_mouse_click�AbstractDefaultRootTest)�add_standard_options�AbstractWidgetTest�StandardOptionsTests�IntegerSizeTests�PixelSizeTests�guic�*�eZdZd�Zd�Zd�Zd�Zd�Zy)�StandardTtkOptionsTestsc��|j�}|j|dd�d}t|j�dkrd}|j	|dd|��|jd��}|j|dd�y)	N�class��"attempt to change read-only option���r�beta��"Attempt to change read-only option�Foo��errmsg��class_)�create�assertEqualr�root�checkInvalidParam��self�widgetr"�widget2s    �7/usr/local/lib/python3.12/test/test_ttk/test_widgets.py�test_configure_classz,StandardTtkOptionsTests.test_configure_classsy�������������"�-�3���T�Y�Y�'�*>�>�7�F����v�w��f��E��+�+�U�+�+�������)�5�1�c����j�}t�j�dkr�fd�}nd}�j|ddd|���j|ddd|���j|dd	d	|���j|dd
d
|���j|ddd|���j|dd��j|dd
d��y)N)rr�c�b���j|t�ttt|��S�N)�assertIsInstance�tuple�map�str)�valuer*s �r-�padding_convzDStandardTtkOptionsTests.test_configure_padding.<locals>.padding_conv s$����%�%�e�U�3��S��e�_�-�-r/�paddingr)r)�expected�conv�)r=)r=r)r=r�)r=rr>r)�5p�6p�7p�8p�r�r;)r%rr'�
checkParam)r*r+r9s`  r-�test_configure_paddingz.StandardTtkOptionsTests.test_configure_paddings����������T�Y�Y�'�*�4�
.� �L�����	�1�t�,��O�����	�1�t�,��O�����	�6�!'�l�	�	<�����	�9�!*��	�	?�����	�<�!-�L�	�	B�����	�+C�D�����	�2���;r/c�N�|j�}|j|dddd�y)N�state�active�disabled�readonly�r%�checkParams�r*r+s  r-�test_configure_statez,StandardTtkOptionsTests.test_configure_state0s#������������(�J�
�Kr/c��|j�}|j|dd�d}t|d�rdt|d�j	�z}|j|dd|��|jd��}|j|d	d�y)
N�stylerzLayout Foo not found�default_orientzLayout %s.Foo not foundr r!r#r)r%r&�hasattr�getattr�titler(r)s    r-�test_configure_stylez,StandardTtkOptionsTests.test_configure_style4s��������������"�-�'���4�)�*�/��d�$4�5�;�;�=�>�F����v�w���	�	��+�+�U�+�+�������)�5�1r/c�Z�|j�}|j|dtdk\��y)N�relief�rr>)�allow_empty)r%�checkReliefParamr
rNs  r-�test_configure_reliefz-StandardTtkOptionsTests.test_configure_reliefAs-����������f�h�+5��+?�	�	Br/N)�__name__�
__module__�__qualname__r.rFrOrVr\rCr/r-rrs��2�<�&L�
2�Br/rc�.��eZdZdZ�fd�Zd�Zd�Z�xZS)�
WidgetTestz,Tests methods available in every ttk widget.c���t�|��tj|jdd��|_|j
j
�y)Nr�Text)�width�text)�super�setUpr�Buttonr'r+�pack�r*�	__class__s �r-rgzWidgetTest.setUpJs4���
��
���j�j����!�&�A��������r/c	��|jj�|j|jjt	|jj�dz�t	|jj
�dz��d�|j|jjdd�d�|jtj|jjdd�|jtj|jjdd�|jtj|jjdd�y)N��label���rr=)
r+�updater&�identify�int�winfo_width�winfo_height�assertRaises�tkinterr�r*s r-�
test_identifyzWidgetTest.test_identifyOs���������������-�-�����'�'�)�A�-�.�����(�(�*�Q�.�/���	�	
������-�-�b�"�5�r�:����'�*�*�D�K�K�,@�,@�$��J����'�*�*�D�K�K�,@�,@�!�T�J����'�*�*�D�K�K�,@�,@�!�R�Hr/c���|j|jj�d�|j|jjdg�d�|j|jjdg�d�|j|jjdg�d�|j|jjddg�d�|j|jjddg�d�|j|jjddg�d�d�}|j|jjdg|d	fid
di��d	d
dif�|jj�}|j	t
j|jjdg�|j	t
j|jjddg�|j||jj��|jjddg�|j|jj�d
�y)NrC�	!disabledTrJ)rzrI)z!activerJc�
�||fSr3rC)�arg1�kws  r-�test_cbz-WidgetTest.test_widget_state.<locals>.test_cbks����8�Or/�hi�msg�there�badstate)rI)r&r+rH�instaterurvr)r*r~�	currstates   r-�test_widget_statezWidgetTest.test_widget_state[s���������*�*�,�b�1�������,�,�k�]�;�T�B�	
������*�*�J�<�8�/�J�������*�*�J�<�8�"�=�������*�*�K��+B�C�#�	%�	
������*�*�K��+B�C�R�H�������*�*�H�k�+B�C�R�H�	����,����,�,�k�]��T�/�#�W�-�/�
�E�7�#�$�	&�
�K�K�%�%�'�	����'�*�*�D�K�K�,?�,?�
�L�	����'�*�*�D�K�K�,?�,?�
��$�	&�	
����D�K�K�$5�$5�$7�8�	
�����8�[�1�2�������*�*�,�l�;r/)r]r^r_�__doc__rgrxr��
__classcell__�rks@r-raraGs���6��

I�!<r/rac��eZdZdZy)�AbstractToplevelTestFN)r]r^r_�_conv_pixelsrCr/r-r�r�s���Lr/r�c��eZdZdZd�Zy)�	FrameTest)	�borderwidthr�cursor�heightr:rXrQ�	takefocusrdc�B�tj|jfi|��Sr3)r�Framer'�r*�kwargss  r-r%zFrameTest.create�����y�y����-�f�-�-r/N�r]r^r_�OPTIONSr%rCr/r-r�r��s���G�.r/r�c�"�eZdZdZd�Zd�Zd�Zy)�LabelFrameTest)
r�rr�r��labelanchor�labelwidgetr:rXrQr�re�	underlinerdc�B�tj|jfi|��Sr3)r�
LabelFramer'r�s  r-r%zLabelFrameTest.create�����~�~�d�i�i�2�6�2�2r/c��|j�}|j|ddddddddd	d
ddd
d��|j|dd�y)Nr��e�en�es�n�ne�nw�s�se�sw�w�wn�wsz!Bad label anchor specification {}r!�center)r%�checkEnumParamr(rNs  r-�test_configure_labelanchorz)LabelFrameTest.test_configure_labelanchor�sT����������F�M��T�4��d�D�#�t�T�3��d�:�	�	<�	
���v�}�h�?r/c��|j�}tj|jdd��}|j	|d|d��|j�y)N�Mupp�foo)re�namer�z.foorD)r%r�Labelr'rE�destroy)r*r+rns   r-�test_configure_labelwidgetz)LabelFrameTest.test_configure_labelwidget�s@��������	�	�$�)�)�&�u�=������
�u�v��F�
�
�
�r/N)r]r^r_r�r%r�r�rCr/r-r�r��s���G�3�@�r/r�c�T�eZdZdZd�Zd�Zedd�ej�Zd�Z	y)�AbstractLabelTestTc��tj|jd��}tj|jd��}|j|||d��|j||dd��|j|||fd��|j|||d|fd��|j||dd��|j	||d	d
��y)N�image1)�masterr��image2)r�rDrI)r�rIr�zimage1 active image2�spamzimage "spam" doesn't existr!)rv�
PhotoImager'rEr()r*r+r��imager�s     r-�checkImageParamz!AbstractLabelTest.checkImageParam�s����"�"�$�)�)�(�C���#�#�4�9�9�8�D�������e�k��B������h���E������u�h���E������u�h��&?�!?�	�	A������&<�!?�	�	A����v�t�V�4�	�	6r/c�r�d}tdk\r|dz
}|j�}|j|dg|��ddi�y)N)�nonerer�r��top�bottom�left�rightrY)r�compoundrZT)r
r%r�)r*�valuesr+s   r-�test_configure_compoundz)AbstractLabelTest.test_configure_compound�s?��V������e�O�F����������F�J�J��J�T�Jr/rr>c�N�|j�}|j|dddd�y)Nrd��n���rrLrNs  r-�test_configure_widthz&AbstractLabelTest.test_configure_width�s#������������#�t�Q�7r/N)
r]r^r_�_allow_empty_justifyr�r�r	r�test_configure_justifyr�rCr/r-r�r��s5����6�K�/�[��A�.�/C�/Z�/Z�[��8r/r�c�<�eZdZdZdZedk\Zd�ZejZ	y)�	LabelTest)�anchor�
backgroundr�rr�r��font�
foregroundr��justifyr:rXrHrQr�re�textvariabler�rd�
wraplengthFrYc�B�tj|jfi|��Sr3)rr�r'r�s  r-r%zLabelTest.create�r�r/N)
r]r^r_r�r�r
r�r%rr�rCr/r-r�r��s.���G��L�%��/��.�2�H�H�r/r�c�"�eZdZdZd�Zd�Zd�Zy)�
ButtonTest)r�commandr�r��defaultr�r�r:rHrQr�rer�r�rdc�B�tj|jfi|��Sr3)rrhr'r�s  r-r%zButtonTest.create�s���z�z�$�)�)�.�v�.�.r/c�d�|j�}d}|j|dg|��dtdk\i�y)N)�normalrIrJr��sortrY�r%r�r
�r*r+r�s   r-�test_configure_defaultz!ButtonTest.test_configure_default�s:�������1������F�I�	7��	7�!+�v�!5�	7r/c���g�tj|j�fd���}|j�|j	��y)Nc�&���jd�S�N���append��successs�r-�<lambda>z(ButtonTest.test_invoke.<locals>.<lambda>�s���G�N�N�1�4Er/�r�)rrhr'�invoke�
assertTrue)r*�btnr�s  @r-�test_invokezButtonTest.test_invoke�s2������j�j����,E�F���
�
������ r/N)r]r^r_r�r%r�r�rCr/r-r�r��s���G�/�7�!r/r�c�4�eZdZdZd�Zd�Zd�Zd�Zd�Zd�Z	y)	�CheckbuttonTest)rr�r�r�r�r��offvalue�onvaluer:rHrQr�rer�r��variablerdc�B�tj|jfi|��Sr3)r�Checkbuttonr'r�s  r-r%zCheckbuttonTest.create�������t�y�y�3�F�3�3r/c�P�|j�}|j|ddddd�y)Nr�r��ffffff@r�
any stringrLrNs  r-�test_configure_offvaluez'CheckbuttonTest.test_configure_offvalues%������������Q��R��Fr/c�P�|j�}|j|ddddd�y)Nr�r�r�rr�rLrNs  r-�test_configure_onvaluez&CheckbuttonTest.test_configure_onvalues%������������A�s�B��Er/c���g��fd�}tj|j|��}|j|j	�d�|jtj|jj|d�|j�}|j|d�|j|d|jj|d��|j��d|d<|j�}td	k\r|jr|j|d
�n|jt|�d�|jt!��d�|j|d|jj|d��y)
Nc�(���jd�y�Nr��cb test calledr�r�s�r-�cb_testz,CheckbuttonTest.test_invoke.<locals>.cb_test
�����N�N�1��#r/r�)�	alternater�rr�rr�rYrCr�r�)rr�r'r&rHrurvr�tk�globalgetvarr�r�r
�wantobjectsr7�assertLessEqual�len)r*r�cbtn�resr�s    @r-r�zCheckbuttonTest.test_invokesB�����	$����t�y�y�'�:��	
��������7����'�*�*�D�G�G�,@�,@����	��k�k�m������.�/�����i���G�G� � ��j�!1�2�	4����� ���Y���k�k�m�����D�$4�$4����S�"�%����S��X�r�*����S��\�1�-�����j�)��G�G� � ��j�!1�2�	4r/c��g}g}td�D]�}tj|j�}|j	�|j|�dD]:}tj||��}|j	�|j|��<��|D�cgc]}t|d���}}|jtt|��d|�ycc}w)Nrm�AB�rer��)�rangerr�r'rir�r�r7r&r
�set)r*�frames�buttons�i�f�j�b�	variabless        r-�test_unique_variablesz%CheckbuttonTest.test_unique_variables%s��������q��A��	�	�$�)�)�$�A�
�F�F�H��M�M�!�����O�O�A�A�.���������q�!��	�29�9��A�S��:��'��	�9�����S��^�,�a��;��:s�Cc��g}tj|j�}|j�tj|j�}|j�dD]:}t	j
||��}|j�|j
|��<td�D]C}tj
|t|���}|j�|j
|��E|D�cgc]
}t|���}}|jtt|��t|�|�|D�cgc]}t|d���}}|jtt|��t|�|�ycc}wcc}w)Nrr�dr�)rr�r'rirvr�r�rr7r&r
r)r*rrrr�namesrs       r-�test_unique_variables2z&CheckbuttonTest.test_unique_variables23s#�����I�I�d�i�i� ��	�����I�I�d�i�i� ��	�����A��#�#�A�A�.�A�
�F�F�H��N�N�1����s��A������A��/�A�
�F�F�H��N�N�1���")�)��A��Q����)�����S��Z��#�g�,��>�18�9��A�S��:��'��	�9�����S��^�,�c�'�l�I�F��*��9s�5F�;FN)
r]r^r_r�r%r�rr�rr!rCr/r-r�r��s*���G�4�G�F�4�:<�Gr/r�c���eZdZdZej
dk(rdndZ�fd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Z�xZS)�	EntryTest)r�rr��exportselectionr�r��invalidcommandr��placeholder�placeholderforeground�showrHrQr�r��validate�validatecommandrd�xscrollcommand�darwinzEntry.field�textareac�L��t�|��|j�|_yr3)rfrgr%�entryrjs �r-rgzEntryTest.setUpU����
��
���[�[�]��
r/c�B�tj|jfi|��Sr3)r�Entryr'r�s  r-r%zEntryTest.createYr�r/c�H�|j�}|j|d�y)Nr%�r%�checkCommandParamrNs  r-�test_configure_invalidcommandz'EntryTest.test_configure_invalidcommand\s����������v�'7�8r/c��|j�}|j|dd�|j|dd�|j|dd�y)Nr(�*r� �r%rErNs  r-�test_configure_showzEntryTest.test_configure_show`s=�������������,�������+�������,r/c
�T�|j�}|j|ddddddd�y)Nr)�all�key�focus�focusin�focusoutr��r%r�rNs  r-�test_configure_validatez!EntryTest.test_configure_validatefs-����������F�J��u�g�y�*�f�	Fr/c�H�|j�}|j|d�y)Nr*r4rNs  r-�test_configure_validatecommandz(EntryTest.test_configure_validatecommandks����������v�'8�9r/c�,�|j|jjd��|jtj
|jjd�|jtj
|jjd�y)Nr�noindex)�assertIsBoundingBoxr/�bboxrurvrrws r-�	test_bboxzEntryTest.test_bboxos]��� � �������!3�4����'�*�*�D�J�J�O�O�Y�G����'�*�*�D�J�J�O�O�T�Br/c�t�|jj�|jj�|j|jj	dd�|j
�|j|jj	dd�d�|j
tj|jjdd�|j
tj|jjdd�|j
tj|jjdd�y)Nr=ror)	r/rirpr&rq�IDENTIFY_ASrurvrrws r-rxzEntryTest.test_identifyts����
�
�����
�
����	
������,�,�Q��2�D�4D�4D�E�������,�,�R��4�b�9����'�*�*�D�J�J�,?�,?��q�I����'�*�*�D�J�J�,?�,?��D�I����'�*�*�D�J�J�,?�,?��B�Gr/c���g��fd�}d|jd<d�|jd<||jd<|jj�|j��d|jd<|jj�|jt	��d�||jd<d	�|jd<|jj�|jt	��d�d|jd<|jj�|jt	��d�d
|jd<|jtj|jj�y)Nc�&���jd�S�NTr�r�s�r-r�z3EntryTest.test_validation_options.<locals>.<lambda>�s���w�~�~�d�3r/r�r)c��y)NFrCrCr/r-r�z3EntryTest.test_validation_options.<locals>.<lambda>�s��r/r*r%rr�c��yrOrCrCr/r-r�z3EntryTest.test_validation_options.<locals>.<lambda>�s��r/T)r/r)r�r&r
rurvr)r*�test_invalidr�s  @r-�test_validation_optionsz!EntryTest.test_validation_options�s,�����3��!'��
�
�:��(5��
�
�$�%�'3��
�
�#�$��
�
�������� �')��
�
�#�$��
�
��������W��q�)�'3��
�
�#�$�(4��
�
�$�%��
�
��������W��q�)�(*��
�
�$�%��
�
��������W��q�)�(,��
�
�$�%����'�*�*�D�J�J�,?�,?�@r/c�r��g��fd�}d|jd<|jj|�df|jd<|jjdd�|jjdd�|j�d	d
g�|j|jj	�d�y)Nc���d|j�cxkrdksn�jd�y�jd�y�N�a�zFT)�lowerr�)�	to_insert�
validations �r-r)z+EntryTest.test_validation.<locals>.validate�s9����)�/�/�+�2�s�2��!�!�%�(�����d�#�r/r>r)z%Sr*�endr�rWFT)r/�register�insertr&�get)r*r)r[s  @r-�test_validationzEntryTest.test_validation�s�����
�	�"'��
�
�:��(,�
�
�(;�(;�H�(E�t�(K��
�
�$�%��
�
���%��#��
�
���%��%�����e�T�]�3���������)�3�/r/c��d�}|jj|�df|jd<|jjdd�|j|jj	�d�|j|jj�d�|jj
dd�|j|jj�d	�|jjdd
�|j|jj	�d�|j|jj�d�|jj
d
�|j|jj	�d�|j|jj�d�y)Nc�N�|D] }d|j�cxkrdkr�yyyrV)rY)�content�letters  r-r)z-EntryTest.test_revalidation.<locals>.validate�s/��!���f�l�l�n�3��3� �4� �"�r/z%Pr*r\�avocadoTrCrr�a1bF)�invalidr�)r/r]r^r&r)rH�deleter_)r*r)s  r-�test_revalidationzEntryTest.test_revalidation�sC��	�)-�
�
�(;�(;�H�(E�t�(K��
�
�$�%��
�
���%��+�������,�,�.��5�������)�)�+�R�0��
�
���!�U�#���������)�2�.��
�
���%��'�������,�,�.��6�������)�)�+�]�;��
�
���!��������,�,�.��5�������)�)�+�R�0r/)r]r^r_r��sys�platformrLrgr%r6r;rCrErJrxrSr`rir�r�s@r-r#r#IsY����G�$'�<�<�8�#;�-��K�#�.�9�-�F�
:�C�

H�A�60�"1r/r#c�l��eZdZdZej
dk(rdndZ�fd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
�xZS)�ComboboxTest)r�rr�r$r�r�r�r%r�r&r'�postcommandr(rHrQr�r�r)r*r�rdr+r,zCombobox.buttonr-c�L��t�|��|j�|_yr3)rfrgr%�comborjs �r-rgzComboboxTest.setUp�r0r/c�B�tj|jfi|��Sr3)r�Comboboxr'r�s  r-r%zComboboxTest.create�����|�|�D�I�I�0��0�0r/c
�T�|j�}|j|ddddddd�y)Nr�r������LY@�fffff�Y@���r�1irLrNs  r-�test_configure_heightz"ComboboxTest.test_configure_height�s)������������3��u�d�A�t�Lr/c�p�|jj�}|dz
d}}tjdk7r,|j	|jj||�d�|jj
d||��|jj
d||��|jj�y)Nr=r,�
.*downarrow\Z�<ButtonPress-1>��x�y�<ButtonRelease-1>)rprsrjrk�assertRegexrq�event_generate�update_idletasks)r*rdr~rs    r-�_show_drop_down_listboxz$ComboboxTest._show_drop_down_listbox�s����
�
�&�&�(���q�y�!�1���<�<�8�#����T�Z�Z�0�0��A�6�8H�I��
�
�!�!�"3�q�A�!�>��
�
�!�!�"5��a�!�@��
�
�#�#�%r/c����g�dg|jd<|jjd�fd��|jj�|jj�|jj	�}|j�|jj�|jj
d�|jj�|j��y)Nr�r�z<<ComboboxSelected>>c�&���jd�SrOr���evtr�s �r-r�z1ComboboxTest.test_virtual_event.<locals>.<lambda>�s������t�,r/z<Return>)rp�bindrirprtr�r�r�)r*r�r�s  @r-�test_virtual_eventzComboboxTest.test_virtual_event�s������ !�s��
�
�8���
�
���.�,�	.��
�
�����
�
�������(�(�*���$�$�&��
�
�����
�
�!�!�*�-��
�
�������� r/c�L��g��fd�|jd<|jj�|jj�|j�|j	��d|jd<|j�|jt
��d�y)Nc�&���jd�SrOr�r�s�r-r�z9ComboboxTest.test_configure_postcommand.<locals>.<lambda>�s���G�N�N�4�,@r/rnrr�)rprirpr�r�r&r
�r*r�s @r-�test_configure_postcommandz'ComboboxTest.test_configure_postcommand�s|�����$@��
�
�=�!��
�
�����
�
�����$�$�&����� �%'��
�
�=�!��$�$�&�����W��q�)r/c�����fd�}�j�jdd�|dd��j�jddd���j�jdd��j�jdd	��j�jdd�gd
��jd<�jjd�|dd��jj	d
�|dd
��jjd�|dd��jjd�d�jd<|dd��jjgd����j
�jd�jrdnd�gd��jd<�j
�jd�jrdnd�gd��jd<�j
�jd�jrdnd��jtj�jjt�jd���jtj�jjd�tj�jgd���}�j
|d�jrdnd�|j�y)Nc����j�jj�|��j�jj�|�yr3)r&rpr_�current)�getval�currvalr*s  �r-�check_get_currentz=ComboboxTest.test_configure_values.<locals>.check_get_currents;������T�Z�Z�^�^�-�v�6����T�Z�Z�/�/�1�7�;r/r�)rCrrro�mon tue wed thur��mon�tue�wed�thurrD��*g��Q�	@rr��rWr��cr�rmrrW�d)r�rmrr�r�rrm�r���1r�2�1 {} 2�za bza	bza
b�{a b} {a	b} {a
b}�za\tbz"a"z} {�a\\tb {"a"} \}\ \{�r�rmr�r�r�r�1 2 {})�assertInrprErr��	configurer&rrurvrr
rrrr'r�)r*r��combo2s`  r-�test_configure_valuesz"ComboboxTest.test_configure_valuess[���	<�	
�
�
�d�j�j��*�H�5��"�b�!�����
�
�H�.@�!>�	�	@�����
�
�H�.K�L�����
�
�H�.J�K�����
�
�H�b�1�,��
�
�8���
�
���s���#�q�!��
�
���1���#�q�!��
�
���s���#�r�"�	
�
�
���r��,��
�
�8���"�a� �	
�
�
���J��/�������H�-�+/�+;�+;��!�	#�
 7��
�
�8��������H�-�48�4D�4D�0�.�	0�
 7��
�
�8��������H�-�48�4D�4D�0�.�	0�
	
���'�*�*�D�J�J�,>�,>���
�
�8�$�%�	'�	
���'�*�*�D�J�J�,>�,>��C����d�i�i�
�;�������)�+/�+;�+;���	K����r/)r]r^r_r�rjrkrLrgr%ryr�r�r�r�r�r�s@r-rmrm�sC����G�(+�|�|�x�'?�#�Z�K�#�1�M�&�!�"
*�:r/rmc�L��eZdZdZ�fd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Z�xZS)
�PanedWindowTest)rr�r��orientrQr�rdc�L��t�|��|j�|_yr3)rfrgr%�panedrjs �r-rgzPanedWindowTest.setUpJr0r/c�B�tj|jfi|��Sr3)r�PanedWindowr'r�s  r-r%zPanedWindowTest.createNr�r/c�"�|j�}|jt|d�d�d}t|j�dkrd}|j|dd|��|jd��}|jt|d�d�y)	Nr��verticalrrr�
horizontalr!)r�)r%r&r7rr'r(r)s    r-�test_configure_orientz%PanedWindowTest.test_configure_orientQs������������V�H�-�.�
�;�3���T�Y�Y�'�*>�>�7�F����v�x���	�	��+�+�\�+�2������W�X�.�/��>r/c��tj|j�}tj|�}|jtj
|jj|�|j�|j�tj|j�}tj|�}|jtj
|jj|�|j�|j�tj|j�}|jj
|�|jtj
|jj|�tj|j�}|jj
|�|j|jjd�|jjd��|jtj
|jjd�|j�|j�|jtj
|jjd�y)Nrr�rm)rr�r�rurvr�addr�r'r&�pane)r*rn�child�
good_child�other_childs     r-�test_addzPanedWindowTest.test_add\s����	�	�$�*�*�%���	�	�%� �����'�*�*�D�J�J�N�N�E�B�
�
�
��
�
�
���	�	�$�)�)�$���	�	�%� �����'�*�*�D�J�J�N�N�E�B�
�
�
��
�
�
���Y�Y�t�y�y�)�
��
�
���z�"����'�*�*�D�J�J�N�N�J�G��i�i��
�
�+���
�
���{�#����������+�T�Z�Z�_�_�Q�-?�@����'�*�*�D�J�J�O�O�Q�?������������'�*�*�D�J�J�O�O�Q�?r/c���|jtj|jjd�|jtj|jjd�|jjt
j|j��|jj	d�|jtj|jjd�y)Nr)	rurvrr��forgetr�rr�r'rws r-�test_forgetzPanedWindowTest.test_forgetws������'�*�*�D�J�J�,=�,=�t�D����'�*�*�D�J�J�,=�,=�q�A��
�
���s�y�y����+�,��
�
���!�����'�*�*�D�J�J�,=�,=�q�Ar/c��|jtj|jjdd�|jtj|jjdd�|jtj|jjdd�tj|j�}tj|j�}tj|j�}tdk\rl|jj	d|�|j|jj�t|�f�|jjd�n6|jtj|jjd|�|j|jj�d�|jj	d|�|jj	d|�|j|jj�t|�t|�f�|jj	d|�|j|jj�t|�t|�f�|jj	d|�|j|jj�t|�t|�t|�f�|jj�}|jj	d|�|j||jj��|jj	||�|j|jj�t|�t|�t|�f�y)NrrYrCr\)
rurvrr�r^rr�r'r
r&�panesr7r�)r*r��child2�child3r�s     r-�test_insertzPanedWindowTest.test_inserts������'�*�*�D�J�J�,=�,=�t�Q�G����'�*�*�D�J�J�,=�,=�q�$�G����'�*�*�D�J�J�,=�,=�q�!�D��	�	�$�)�)�$�����4�9�9�%�����4�9�9�%������J�J���a��'����T�Z�Z�-�-�/�#�e�*��?��J�J���a� ����g�.�.��
�
�0A�0A�1�e�L�������)�)�+�R�0��
�
���%��(��
�
���!�U�#�������)�)�+�c�%�j�#�f�+�-F�G��
�
���!�V�$�������)�)�+�c�&�k�3�u�:�-F�G��
�
���%��(�������)�)�+�
��[�#�e�*�c�&�k�2�	4��
�
� � �"���
�
���%��(������
�
� 0� 0� 2�3�
	
�
�
���&�&�)�������)�)�+�
��[�#�f�+�s�5�z�2�	4r/c�2�|jtj|jjd�tj|j�}|jj|�|j|jj	d�t�|j|jj	dd��|jrdnd�|j|jj	dd�|jrdnd�|j|jj	d�|jj	t|���|jtj|jjdd��y)Nr��weight�0r��	somevalue)�	badoption)rurvrr�r�rr�r'r�r4�dictr&rr7)r*r�s  r-�	test_panezPanedWindowTest.test_pane�s�����'�*�*�D�J�J�O�O�Q�?��	�	�$�)�)�$���
�
���u�����d�j�j�o�o�a�0�$�7����������4��8�"�.�.��C�	9�	
���������H�5�"�.�.��C�	9����������+�T�Z�Z�_�_�S��Z�-H�I����'�*�*�D�J�J�O�O�Q�!�	�	#r/c�f�|jtj|jjd�|jtj|jjd�|jtj|jjd�tj|jd��}|jj|d��|jtj|jjd�tj|jd��}|jj|�|jtj|jjd�|jjdd	�
�|jj	d�}|jj	dd�|j||jj	d��|j|jj	d�t�y)NrrrWrr�r�rT�both)�expand�filli�)rurvrr��sashposrr�r�ri�assertNotEqualr4rr)r*r�r��curr_poss    r-�test_sashposzPanedWindowTest.test_sashpos�sr�����'�*�*�D�J�J�,>�,>��E����'�*�*�D�J�J�,>�,>��C����'�*�*�D�J�J�,>�,>��B��	�	�$�*�*�3�/���
�
���u�Q��'����'�*�*�D�J�J�,>�,>��B����4�:�:�C�0���
�
���v�����'�*�*�D�J�J�,>�,>��B��
�
���t�&��1��:�:�%�%�a�(���
�
���1�d�#����H�d�j�j�&8�&8��&;�<����d�j�j�0�0��3�S�9r/)
r]r^r_r�rgr%r�r�r�r�r�r�r�r�s@r-r�r�Cs5����G�
#�4�	?�@�6B�&4�P#� :r/r�c�"�eZdZdZd�Zd�Zd�Zy)�RadiobuttonTest)rr�r�r�r�r�r:rHrQr�rer�r�r8r�rdc�B�tj|jfi|��Sr3)r�Radiobuttonr'r�s  r-r%zRadiobuttonTest.create�r�r/c�P�|j�}|j|ddddd�y)Nr8r�r�rr�rLrNs  r-�test_configure_valuez$RadiobuttonTest.test_configure_value�s%������������!�S�"�l�Cr/c	�V��g��fd�}tj|j�}tj|j||d��}tj|j||d��}|j
rd�}nt}|j�}|j|d�|j||d�|j��|j|j�||jj|d���|j��d	|d
<|j�}tdk\r|j
r|j|d�n|jt|�d	�|jt!��d�|j||d�|j��|j|j�||jj|d���|jt|d�t|d��y)
Nc�(���jd�yrr�r�s�r-rz6RadiobuttonTest.test_configure_invoke.<locals>.cb_test�rr/r)r�r�r8r�c��|Sr3rC�r~s r-r�z7RadiobuttonTest.test_configure_invoke.<locals>.<lambda>����Qr/rr8r�rr�rYrC)rv�IntVarr'rr�rrrr�r&r_r	r
r�r
r7rr
)r*r�myvarr�cbtn2r<rr�s       @r-�test_configure_invokez%RadiobuttonTest.test_configure_invoke�s������	$����t�y�y�)�����t�y�y�'�(-�Q�8������	�	�7�).�a�9������D��D��k�k�m������.�/�����d�7�m�,�e�i�i�k�:������������%�%�d�:�&6�7�8�	:����� ���i���l�l�n�����D�$4�$4����S�"�%����S��X�r�*����S��\�1�-�����e�G�n�-�u�y�y�{�;������������%�%�d�:�&6�7�8�	:�	
����T�*�-�.��E�*�4E�0F�Gr/N)r]r^r_r�r%r�r�rCr/r-r�r��s���G�4�D�#Hr/r�c�"�eZdZdZd�Zd�Zd�Zy)�MenubuttonTest)rr�r��	directionr�r��menur:rHrQr�rer�r�rdc�B�tj|jfi|��Sr3)r�
Menubuttonr'r�s  r-r%zMenubuttonTest.create
r�r/c�d�|j�}d}|j|dg|��dtdk\i�y)N)�above�belowr�r��flushr�r�rYr�r�s   r-�test_configure_directionz'MenubuttonTest.test_configure_direction
s:�������=������F�K�	7�&�	7�!+�v�!5�	7r/c��|j�}tj|d��}|j|d|t��|j�y)Nr�)r��r<)r%rv�MenurEr7r�)r*r+r�s   r-�test_configure_menuz"MenubuttonTest.test_configure_menus:��������|�|�F��0��������3��7����r/N)r]r^r_r�r%r�r�rCr/r-r�r�s���G�3�7�r/r�c���eZdZdZdZdZ�fd�Zd�Zd�Zd�Z	e
dd	d
�ej�Zd�Z
d�Zd
�Zd�Zd�Z�xZS)�	ScaleTest)rr�r��from�lengthr�rHrQr��tor8r�Fr�c���t�|��|j�|_|jj	�|jj�yr3)rfrgr%�scalerirprjs �r-rgzScaleTest.setUp#s7���
��
���[�[�]��
��
�
�����
�
���r/c�B�tj|jfi|��Sr3)r�Scaler'r�s  r-r%zScaleTest.create)r�r/c�R�|j�}|j|ddddd��y)Nr�r�������-@�333333.@Fr��r%�checkFloatParamrNs  r-�test_configure_fromzScaleTest.test_configure_from,s(����������V�V�S�$��5��Ir/c�P�|j�}|j|ddddd�y)Nr��gffffff`@g33333�`@�5i�r%�checkPixelsParamrNs  r-�test_configure_lengthzScaleTest.test_configure_length0s%����������f�h��U�E�4�Hr/rr�	c	�T�|j�}|j|dddddd��y)Nr��,rr���Fr�rrNs  r-�test_configure_tozScaleTest.test_configure_to6s*����������V�T�3��d�C�e��Lr/c	�T�|j�}|j|dddddd��y)Nr8rrrrFr�rrNs  r-r�zScaleTest.test_configure_value:s*����������V�W�c�4��s���Or/c���gd��|jjd�fd��}d|jd<d|jd<d|jd<|j��gd��|jjd	d
��|jjdd
��|jjd��|j��y)N)r�r�r�z<<RangeChanged>>c�$���j�Sr3)�pop)r��failures �r-r�z-ScaleTest.test_custom_event.<locals>.<lambda>As������r/�
r��from_rr�rmr=)rr�r���)r�)r�r��assertFalser�)r*�funcidrs  @r-�test_custom_eventzScaleTest.test_custom_event>s�����������!3�5N�O����
�
�6�� ��
�
�7����
�
�4������!����
�
���1���+��
�
���1���,��
�
�����#�����!r/c�2�|jrd�}nt}|jj�}|j	|jj|d�|jd�|j	||jjdd��||jd��|j	|jj�|jd�d|jd<|j	|jj�|jd�|j
tj|jj
dd�|j
tj|jj
dd�y)Nc��|Sr3rCr�s r-r�z$ScaleTest.test_get.<locals>.<lambda>Rr�r/rr�r�r8�r)	r�floatr�rsr&r_rurvr)r*r<�scale_widths   r-�test_getzScaleTest.test_getPs������D��D��j�j�,�,�.�����������Q�7����D�9I�J�����d�j�j�n�n�Q��2�3�T�$�*�*�V�:L�5M�N���������)�4�:�:�g�+>�?� ��
�
�7����������)�4�:�:�g�+>�?����'�*�*�D�J�J�N�N�B��B����'�*�*�D�J�J�N�N�A�r�Br/c��|jrd�}nt}||jd�}|dz}|jj|�|j	||jj��|�||jd�}|jj|dz
�|j	||jj��|�t
j|j�}||jd<|j|dz�|j	||jj��|j��|j	||jj��|dz�~t�|dz|jd<|j	||jj��|dz�|j	||jj��||jd��|j	||jjd	d	��|�|j	||jj|jj�d	��|�|jtj|jjd�y)
Nc��|Sr3rCr�s r-r�z$ScaleTest.test_set.<locals>.<lambda>cr�r/r�rr�r�r�r=r8r)
rr!r�rr&r_rv�	DoubleVarr'rrsrur)r*r<�max�new_max�min�vars      r-�test_setzScaleTest.test_setas
������D��D��4�:�:�d�#�$����(���
�
���w������d�j�j�n�n�.�/��5��4�:�:�f�%�&���
�
���s�Q�w������d�j�j�n�n�.�/��5�����	�	�*��!$��
�
�:������a�������d�j�j�n�n�.�/�����;�����d�j�j�n�n�.�/��q��9����"�B�h��
�
�7������d�j�j�n�n�.�/��r��:�����d�j�j�n�n�.�/��d�j�j��6I�1J�K�	
����d�j�j�n�n�Q��2�3�S�9�����d�j�j�n�n�T�Z�Z�-C�-C�-E�q�I�J�C�P����'�*�*�D�J�J�N�N�D�Ar/)r]r^r_r�r�rRrgr%rr
r	rrOrr�rr#r+r�r�s@r-r�r�sh����G��L�!�N��.�J�I�0�;�q�!�Q�/�0G�0\�0\�]��M�P�"�$C�""Br/r�c�X�eZdZdZdZdZdZd�Zedd�d��Z	edd�e
j�Zedd�e
j�Zedd�e
j�Zd	�Zd
�Zd�Zd�Zedd�e
j&�Zd
�Zedd�e
j*�Zy)�ProgressbarTest)r�rr�r�r�r�r�r��mode�maximum�phaserer�rQr�r8r�FTr�c�B�tj|jfi|��Sr3)r�Progressbarr'r�s  r-r%zProgressbarTest.create�r�r/rr>c�\�|j�}|j|ddddddddd	d
d�y)Nr�r�r�r�r�r�r�r�r�r�rrBrNs  r-�test_configure_anchorz%ProgressbarTest.test_configure_anchor�s5����������F�H��T�3��c�4��d�H�b�	Jr/c�N�|j�}|j|dddd�y)Nr�gfffffY@g�����YL@�2irrNs  r-r
z%ProgressbarTest.test_configure_length�s#����������f�h��t�T�Br/c	�T�|j�}|j|dddddd��y)Nr/�fffff�b@������lS@rrFr�rrNs  r-�test_configure_maximumz&ProgressbarTest.test_configure_maximum�s*����������V�Y��t�Q��%��Pr/c�L�|j�}|j|ddd�y)Nr.�determinate�
indeterminaterBrNs  r-�test_configure_modez#ProgressbarTest.test_configure_mode�s!����������F�F�M�?�Kr/c��yr3rCrws r-�test_configure_phasez$ProgressbarTest.test_configure_phase�s��r/c	�T�|j�}|j|dddddd��y)Nr8r8r9rrFr�rrNs  r-r�z$ProgressbarTest.test_configure_value�s/����������V�W�e�T�1�c�"'�	�	)r/N)r]r^r_r�r�r�rRr%r	r4r�test_configure_font�test_configure_foregroundrr�r
r:r>r@�test_configure_textr��test_configure_wraplengthrCr/r-r-r-�s����G��L���!�N�4���A��J��J�
,�+�a��+�,@�,T�,T�U�� 1��A�q� 1�2F�2`�2`� a��.�[��A�.�/F�/]�/]�^��C�Q�L�
�,�+�a��+�,@�,T�,T�U��)�
!2��A�q� 1�2F�2`�2`� a�r/r-r,z"ttk.Scrollbar is special on MacOSXc��eZdZdZdZd�Zy)�
ScrollbarTest)rr�r�r�rQr�r�c�B�tj|jfi|��Sr3)r�	Scrollbarr'r�s  r-r%zScrollbarTest.create�����}�}�T�Y�Y�1�&�1�1r/N�r]r^r_r�rRr%rCr/r-rGrG�s���G� �N�2r/rGc�x��eZdZdZedk\rdZ�fd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Z�xZS)�NotebookTest)rr�r�r:rQr�rdrYFc�|��t�|��|jd��|_t	j
|j�|_t	j
|j�|_|jj|jd��|jj|jd��y)Nr�r:rWrr)
rfrgr%�nbrr�r'�child1r�r�rjs �r-rgzNotebookTest.setUp�sv���
��
���+�+�a�+�(����i�i��	�	�*����i�i��	�	�*��������D�K�K�c��*������D�K�K�c��*r/c�B�tj|jfi|��Sr3)r�Notebookr'r�s  r-r%zNotebookTest.create�rsr/c	��|j�}t|j�dkr|j|dddd�y|j	|dddddd��y)	N�rr�r�r�r�r�10cFr��r%rr'�checkIntegerParamrrNs  r-ryz"NotebookTest.test_configure_height�sQ��������T�Y�Y�'�*�4��"�"�6�8�S�$��B��!�!�&�(�E�3��a�e�!�Tr/c	��|j�}t|j�dkr|j|dddd�y|j	|dddddd��y)	NrUrdr�r�rrWFr�rXrNs  r-r�z!NotebookTest.test_configure_width�sQ��������T�Y�Y�'�*�4��"�"�6�7�C��q�A��!�!�&�'�5�#�t�Q�U�!�Sr/c���|jjd�|jj|j�|j	t
j|jj|j�|j|jjd�d�|jj|j�|j|jjd�d�|jj|j�|j|jjd��|jj|jd��|jj�|jj�t j"dk(rd}nd	}|j|jj|�|jjd��t%d
dd
�D](}	|jjd|zd��dk(ry�*|j'd
�y#t
j$rY�RwxYw)Nrr\r�r�rWrr,z@20,5z@5,5r=rz@%d, 5zTab with text 'a' not found)rPr��hider�rurvr�tabrQr&�indexr��selectr�rirprjrkr�fail)r*�tb_idxrs   r-�test_tab_identifiersz!NotebookTest.test_tab_identifiers�s��������q�������T�[�[�!����'�*�*�D�G�G�K�K����E���������u�-�q�1������D�K�K� ���������u�-�q�1������t�{�{�#���������I�.�/������D�K�K�c��*��������������<�<�8�#��F��F���������V�,�d�g�g�k�k�)�.D�E��q�#�q�!�A�
��7�7�;�;�x�!�|�$�;�7�3�>��?�"�
�I�I�3�4��	�#�#�
��
�s�#I�I!� I!c���|jtj|jjd�|jtj|jjd�|jtj|jjd�|jtj|jj
d�|jtj|jj
t
j|j�d��|jj�}|jj	|j�|jj|j�|j|jj�|�t
j|j�}|jj|d��|jj�}|jjd�}|jj|j�}|jj	|j�|jj|j�|j|jj�|�|j|jj|j�|�|jt|j�|jj�|�|j|jjd�|dz�y)	Nror�option)�unknownr�rr�r�)rurvrrPr\r�rr�r'�tabsrQr&r^r�r7)r*rfr��curr�child2_indexs     r-�test_add_and_hiddenz NotebookTest.test_add_and_hiddens�����'�*�*�D�G�G�L�L�"�=����'�*�*�D�G�G�L�L�$�?����'�*�*�D�G�G�L�L�$�?����'�*�*�D�G�G�K�K��>����'�*�*�D�G�G�K�K����4�9�9�9M��	�	��w�w�|�|�~�������T�[�[�!������D�K�K� �����������.��	�	�$�)�)�$�������E���$��w�w�|�|�~���w�w�}�}�Y�'���w�w�}�}�T�[�[�1�������T�[�[�!������D�K�K� �����������.���������t�{�{�3�\�B�����T�[�[�)�4�7�7�<�<�>�,�+G�H���������y�1�4�!�8�<r/c� �|jtj|jjd�|jtj|jjd�|jtj|jjd�|jj�}|jj
|j�}|jj	|j�|jt|j�|jj��|jt|�dz
t|jj���|jj|j�|j|jj
|j�d�|j||jj
|j��y)Nrorr�)rurvrrPr�rfr^rQ�assertNotInr7r&r
r�r�)r*rf�child1_indexs   r-r�zNotebookTest.test_forget!s;�����'�*�*�D�G�G�N�N�B�?����'�*�*�D�G�G�N�N�D�A����'�*�*�D�G�G�N�N�D�A��w�w�|�|�~���w�w�}�}�T�[�[�1�������t�{�{�#�����T�[�[�)�4�7�7�<�<�>�:�����T��Q���D�G�G�L�L�N�(;�<������D�K�K� ���������t�{�{�3�Q�7����L�$�'�'�-�-����*D�Er/c�`�|jtj|jjd�|jtj|jjd�|j|jj	d�t�|j|jj	|j�d�|j|jj	|j�d�|j|jj	d�d�y)Nror\rr�rm)
rurvrrPr^r4rrr&rQr�rws r-�
test_indexzNotebookTest.test_index0s������'�*�*�D�G�G�M�M�2�>����'�*�*�D�G�G�M�M�4�@����d�g�g�m�m�E�2�C�8���������t�{�{�3�Q�7���������t�{�{�3�Q�7���������u�-�q�1r/c���|jj�}|jjd|d�|j|jj�|d|df�|jj|j|j
�|j|jj�|�|jjd|j�|j|jj�|d|df�|jjdd�|j|jj�|�|j
tj|jjd|d�|j
tj|jjd|d�tj|j�}|jjd|�|j|jj�|dt|�|df�|jj|�|j|jj�|�|jj|j|�|j|jj�t|�f|z�|jj|�tdk\rU|jjd|�|j|jj�g|�t|����n6|j
tj|jjd|�|j
tj|jjd|�|j
tj|jjdd�|j
tj|jjdd�|j
tj|jjdd�y)Nr�rr\rmrorY)rPrfr^r&rQr�rurvrrr�r'r7r�r
)r*rfr�s   r-r�zNotebookTest.test_insert9s����w�w�|�|�~�������q�$�q�'�"����������$�q�'�4��7�);�<������t�{�{�D�K�K�0�����������.������u�d�k�k�*����������$�q�'�4��7�);�<������u�a� �����������.����'�*�*�D�G�G�N�N�A�t�A�w�G����'�*�*�D�G�G�N�N�B��Q��H����4�9�9�%�������q�&�!����������$�q�'�3�v�;��Q��)H�I������v������������.������t�{�{�F�+����������#�f�+��4�)?�@������v������G�G�N�N�1�f�%����T�W�W�\�\�^�-A�t�-A�S��[�-A�B����g�.�.�������6�J����'�*�*�D�G�G�N�N�B��G�	
���'�*�*�D�G�G�N�N�E�4�H����'�*�*�D�G�G�N�N�D�!�D����'�*�*�D�G�G�N�N�D�$�Gr/c����|jj�|jj�g�g�|jj	d�fd��|jj	d�fd��|j|jj
�t|j��|jj
|j�|j��|j|jj
�t|j��|jj�|j��y)Nz<Unmap>c�&���jd�SrOr�r�s �r-r�z*NotebookTest.test_select.<locals>.<lambda>ds������t�0Dr/z<<NotebookTabChanged>>c�&���jd�SrOr�)r��tab_changeds �r-r�z*NotebookTest.test_select.<locals>.<lambda>fs����*�*�4�0r/)
rPrirprQr�r&r_r7r�r�)r*r�rss @@r-�test_selectzNotebookTest.test_select]s��������������������������$D�E������-�0�	2�	
��������)�3�t�{�{�+;�<������t�{�{�#����� ���������)�3�t�{�{�+;�<�����������$r/c��|jtj|jjd�|jtj|jjd�|jtj|jjd�|j|jj	|j�t�|j|jj	|jd��d�|j|jj	|jd�d�|jj	|jd��|j|jj	|jd��d�|j|jj	|jd�d�y)Nro�notabrrWre�abc)	rurvrrPr]r4rQr�r&rws r-�test_tabzNotebookTest.test_tabps+�����'�*�*�D�G�G�K�K��<����'�*�*�D�G�G�K�K��A����'�*�*�D�G�G�K�K��>����d�g�g�k�k�$�+�+�6��=���������T�[�[�t��<�c�B���������T�[�[�&�9�3�?������D�K�K�e��,���������T�[�[�t��<�e�D���������T�[�[�&�9�5�Ar/c�R�|jt|jj��d�|jj	|j
�|jj	|j�|j|jj�d�y)NrmrC)r&r
rPrfr�rQr�rws r-�test_configure_tabsz NotebookTest.test_configure_tabs}sc������T�W�W�\�\�^�,�a�0������t�{�{�#������t�{�{�#�����������,r/c�(�|jj�|jj�|jjd�tj
dk7rdnd}|j
|jjdd�|�t|jdd�|jj�|jjd�|j
|jj�t|j��|jj�|jjd�|j
|jj�t|j��|jj�|jjd�|j
|jj�t|j��|jj|jdd�	�|jj|jd
d�	�|jj�|jj�|j
|jjdd�|�t|jdd�tj
dk(rd}d}nd
}d}|jj|�|j
|jj�t|j��|jj|�|j
|jj�t|j��y)Nrr,r?rr=z
<Control-Tab>z<Shift-Control-Tab>rW)rer�r�z<Left>z<Right>z<Alt-a>z<Alt-e>)rPrirpr_rjrkr&rqr�focus_forcer�r7r�rQr]�enable_traversal)r*�focus_identify_as�beginr\s    r-�test_traversalzNotebookTest.test_traversal�sZ�������������������q��'*�|�|�x�'?�G�R��������)�)�!�Q�/�1B�C��T�W�W�a��+�������������/���������)�3�t�{�{�+;�<������������4�5���������)�3�t�{�{�+;�<������������4�5���������)�3�t�{�{�+;�<������D�K�K�c�Q��7������D�K�K�c�Q��7���� � �"�������������)�)�!�Q�/�1B�C��T�W�W�a��+��<�<�8�#��E��C��E��C������u�%���������)�3�t�{�{�+;�<������s�#���������)�3�t�{�{�+;�<r/)r]r^r_r�r
r�rgr%ryr�rbrir�rnr�rtrxrzr�r�r�s@r-rMrM�s`����G��V����+�1�U�T�5�<=�8
F�2�"H�H%�&B�-�$=r/rMc���eZdZdZej
dk(rdndZ�fd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Z�xZS)�SpinboxTest)r�rr�r�r$r�r��formatr��	incrementr%r�r&r'r(rHrQr�r�r�r)r*r�rd�wrapr+r,z
Spinbox.fieldr-c���t�|��|j�|_|jj	�yr3)rfrgr%�spinrirjs �r-rgzSpinboxTest.setUp�s'���
��
���K�K�M��	��	�	���r/c�B�tj|jfi|��Sr3)r�Spinboxr'r�s  r-r%zSpinboxTest.create�s���{�{�4�9�9�/��/�/r/c��|jj�}|jj�}|dz
}|dzdz
}|j|jj	||�d�|jjd||��|jjd||��|jj
�y)Nr=rmz.*uparrow\Zr|r}r��r�rsrtr�rqr�r��r*rdr�r~rs     r-�_click_increment_arrowz"SpinboxTest._click_increment_arrow�s����	�	�%�%�'�����'�'�)���A�I���A�I��M��������+�+�A�q�1�>�B��	�	� � �!2�a�1� �=��	�	� � �!4��Q� �?��	�	�"�"�$r/c��|jj�}|jj�}|dz
}|dzdz}|j|jj	||�d�|jjd||��|jjd||��|jj
�y)Nr=rmrr{r|r}r�r�r�s     r-�_click_decrement_arrowz"SpinboxTest._click_decrement_arrow�s����	�	�%�%�'�����'�'�)���A�I���A�I��M��������+�+�A�q�1�3C�D��	�	� � �!2�a�1� �=��	�	� � �!4��Q� �?��	�	�"�"�$r/c�*��g��fd�|jd<|jj�|j�|jj�|j��|j	�|jt
��d�d|jd<|jj�|j�|j	�|jj�|jt
��d�y)Nc�&���jd�SrOr�r�s�r-r�z4SpinboxTest.test_configure_command.<locals>.<lambda>�s���w�~�~�d�';r/r�rmr)r�rpr�r�r�r&r
r�r�s @r-�test_configure_commandz"SpinboxTest.test_configure_command�s������;��	�	�)���	�	�����#�#�%��	�	�������� ��#�#�%�����W��q�)� "��	�	�)���	�	�"�"�$��#�#�%��#�#�%��	�	��������W��q�)r/c��d|jd<d|jd<|jjd�|jj�|j�|j	|jj�d�|j�|j	|jj�d�y)Nrr�r=r�r�5)r�rrpr�r&r_rws r-rzSpinboxTest.test_configure_to�s�����	�	�&����	�	�$���	�	�
�
�a���	�	�����#�#�%����������#�.��#�#�%����������#�.r/c��d|jd<d|jd<|jjd�|jj�|j�|j	|jj�d�|j�|j	|jj�d�y)Nr�r�rr�rmr�)r�rrpr�r&r_rws r-rzSpinboxTest.test_configure_from�s�����	�	�&����	�	�$���	�	�
�
�a���	�	�����#�#�%����������#�.��#�#�%����������#�.r/c��d|jd<d|jd<d|jd<|jjd�|jj�|j�|j	|jj�d�d	|jd<|jj�|j
�|j	|jj�d
�y)Nrr�rr�rr�r�r�rm�3)r�rrpr�r&r_r�rws r-�test_configure_incrementz$SpinboxTest.test_configure_increment�s�����	�	�&����	�	�$��!"��	�	�+���	�	�
�
�a���	�	�����#�#�%����������#�.�!"��	�	�+���	�	�����#�#�%����������#�.r/c�Z�|jjd�d|jd<|jj�|j�|jj	�}|jt
|�d�|j|jd�d�d|jd<|jj�|j�|jj	�}|jd|v�|jt
|�d�y)Nr�z%10.3fr�r�.rr)	r�rrpr�r_r&r
r^r�)r*r8s  r-�test_configure_formatz!SpinboxTest.test_configure_format
s����	�	�
�
�a��&��	�	�(���	�	�����#�#�%��	�	�
�
�������U��R�(�������S�)�1�-� ��	�	�(���	�	�����#�#�%��	�	�
�
�������5�(�)�����U��Q�'r/c�v�d|jd<d|jd<|jjd�d|jd<|jj�|j�|j	|jj�d�|j
�|j	|jj�d�d	|jd<|jj�|j�|j	|jj�d�y)
Nrr�r�r�Tr��10r�F)r�rrpr�r&r_r�rws r-�test_configure_wrapzSpinboxTest.test_configure_wraps�����	�	�$����	�	�&���	�	�
�
�a�� ��	�	�&���	�	�����#�#�%����������$�/��#�#�%����������#�.�!��	�	�&���	�	�����#�#�%����������#�.r/c���|j|jdd�|j|jddd��|j|jdd�|j|jdd�|j|jdd�gd�|jd<|jjd�|jj	�|j�|j|jj
�d	�|j�|j|jj
�d�|jjgd
���|j|jd|jrdnd
�gd�|jd<|j|jd|jrdnd�gd�|jd<|j|jd|jrdnd�tj|jgd���}|j|d|jrdnd�|j�y)Nr�rr�r�rDr�r�rWr�r�r�r�r�r�r�r�r�r�r�r�)r&r�rErrpr�r_r�r�rrr�r'r�)r*�spin2s  r-r�z!SpinboxTest.test_configure_values1s���������8�,�b�1�����	�	�8�-?�!>�	�	@�����	�	�8�-J�K�����	�	�8�-I�J�����	�	�8�R�0�+��	�	�(��	
�	�	�
�
�c���	�	�����#�#�%����������#�.��#�#�%����������#�.�	
�	�	���:��.�������8�,�+/�+;�+;��!�	#�
6��	�	�(��������8�,�48�4D�4D�0�.�	0�
6��	�	�(��������8�,�48�4D�4D�0�.�	0�
���D�I�I�j�9������x��+/�+;�+;���	K�
�
�
�r/)r]r^r_r�rjrkrLrgr%r�r�r�rrr�r�r�r�r�r�s@r-r�r��sU����G�&)�\�\�X�%=�/�:�K��
0�%�%�*�(
/�/�/�(�"/�&)r/r�c���eZdZdZ�fd�Zd�Zd�Zd�Zd�Zd�Z	e
dd	�d
��Zd�Ze
dd	�d��Z
e
dd	�d
��Ze
dd	�d��Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z�xZ S)�TreeviewTest)r�columnsr��displaycolumnsr�r:�
selectmode�
selecttyper(�stripedrQr��titlecolumns�
titleitemsr+�yscrollcommandc�P��t�|��|jd��|_y)NrrO)rfrgr%�tvrjs �r-rgzTreeviewTest.setUpfs���
��
���+�+�a�+�(��r/c�B�tj|jfi|��Sr3)r�Treeviewr'r�s  r-r%zTreeviewTest.createjrsr/c��|j�}|j|ddd��|j|dd�|j|ddtdk\rd��yd��y)Nr��a b c�rWrr�rDrrYrC)r%rEr
rNs  r-�test_configure_columnsz#TreeviewTest.test_configure_columnsmsg�����������	�7�!0�	�	2�����	�?�;�����	�2�'1�V�';��	�	E�AC�	�	Er/c��|j�}d|d<|j|ddd��|j|dd�|j|ddd��|j|dd	�|j|dd
d��d
}|j|dd|jd���|j|dd|jd���y)Nr�r�r�zb a c)rrWr�rD�#all)r�)rmr�r)rWrr�zInvalid column index "?d"?r!z!Column index "?{}"? out of bounds)r�rmrr)r�rr)r%rEr(r�)r*r+r"s   r-�test_configure_displaycolumnsz*TreeviewTest.test_configure_displaycolumnsus��������+��y������ 0�'�!0�	�	2����� 0�/�B����� 0�&�!*�	�	,����� 0�)�<����v�'7��&B�	�	D�4�����v�'7��&,�m�m�A�&6�	�	8����v�'7��&,�m�m�B�&7�	�	9r/c	��|j�}|j|dddddd��|j|ddd	d��y)
Nr�rrwr�3cFr�rurvrrNs  r-ryz"TreeviewTest.test_configure_height�sC����������f�h��T�1�d���O����f�h��u�5��Ir/c�N�|j�}|j|dddd�y)Nr�r��browse�extendedrBrNs  r-�test_configure_selectmodez&TreeviewTest.test_configure_selectmode�s&����������F�L�"�H�j�	:r/rr>c�L�|j�}|j|ddd�y)Nr��item�cellrBrNs  r-�test_configure_selecttypez&TreeviewTest.test_configure_selecttype�s!����������F�L�&�&�Ar/c���|j�}|j|ddd��|j|dd�|j|dd�|j|ddd��|j|ddd	��y)
Nr(z
tree headings)�tree�headingsrD)r�r�r�)r�r�)r�r:rNs  r-r;z TreeviewTest.test_configure_show�sq�������������!5�	�	7������(<�=������(<�=���������C������
�]��Kr/c�H�|j�}|j|d�y)Nr�)r%�checkBooleanParamrNs  r-�test_configure_stripedz#TreeviewTest.test_configure_striped�s����������v�y�1r/c�t�|j�}|j|dddd�|j|dd�y)Nr�rr�r=r�r%rYr(rNs  r-�test_configure_titlecolumnsz(TreeviewTest.test_configure_titlecolumns�s5����������v�~�q�!�Q�?����v�~�r�:r/c�t�|j�}|j|dddd�|j|dd�y)Nr�rr�r=rr�rNs  r-�test_configure_titleitemsz&TreeviewTest.test_configure_titleitems�s5����������v�|�Q��1�=����v�|�R�8r/c�r�|jj�|j|jjd�d�|jj	�|jjdd�}|jj
�}|j|�|jj|d�}|j|�dg|jd<|jjdd��|jj|dd�}|jjdd��}|jst|�}|j|d|d|z�|jj|d�}|j|jj|�d�y)	Nrr\r�testr��2�rd�#0)r�rir&rIrpr^�get_childrenr�rH�columnrrr)r*�item_id�childrenrI�bbox_column0�
root_widthrQs       r-rJzTreeviewTest.test_bbox�sF����������������b�)�2�.��������'�'�.�.��U�+���7�7�'�'�)������!��w�w�|�|�H�Q�K�(��� � ��&�%�X����	�������v�R��(��w�w�|�|�H�Q�K��3���W�W�^�^�D��^�5�
�����Z��J�����a��$�q�'�J�*>�?��������/����������f�-�r�2r/c���|j|jj�d�|jjdd�}|j	|jj�t
�|j|jj�d|�|jjdd�}|jjdd�}|jj
|||�|j|jj|�||f�|jtj|jj||�|jj
|�|j|jj|�d�|jj
d�|j|jj�d�y)NrCrr\r)
r&r�r�r^r4r5�set_childrenrurvr)r*r�r�r�s    r-�
test_childrenzTreeviewTest.test_children�sc��������-�-�/��4��'�'�.�.��U�+�����d�g�g�2�2�4�e�<�������-�-�/��2�G�<�������E�*��������E�*�������V�W�f�5�������-�-�f�5���7H�I�	
���'�*�*��G�G� � �&�&�	2�	
�����V�$�������-�-�f�5�r�:�	
�����R� �������-�-�/��4r/c�v�|j|jjd�t�|jr1|j|jjdd��t
�|jjdd��|j
|jjdd�|jrdnd�|j
|jjdd��|jrdnd�|jtj|jjdd��|jtj|jjd�d	d
iddid
diddiddig}|D]9}|jtj|jjdfi|���;y)Nr�r�rrdr��X��idrg�unknown_optionz
some value�stretch�wrongr��minwidth)
r4r�r�r�rrrr&rurvr)r*�invalid_kwsr}s   r-�test_columnzTreeviewTest.test_column�sb�����d�g�g�n�n�T�2�D�9�����!�!�$�'�'�.�.��T�.�"B�C�H������t�2��&����������g�6�#�/�/��T�	;����������D��9�#�/�/��T�	;�	
���'�*�*�D�G�G�N�N�D�S��I����'�*�*�D�G�G�N�N�I�F�
�|�,�	�7�/C�
�w��'�7�!3�j�'�5J�
���B��D���g�.�.�������
��
�r/c���|jtj|jjd�|jjdd�}|jj|d�}|j
|jj�|f�|j
|jj|�|f�|jj	|�|j|jj��|jtj|jj|dd�|jjdd�}|jjdd�}|j
|jj�||f�|jj	||�|j|jj��y)Nr�rr\)
rurvrr�rhr^r&r�r�reattach)r*r��item2�item1s    r-�test_deletezTreeviewTest.test_delete�sX�����'�*�*�D�G�G�N�N�D�A��'�'�.�.��U�+�������w��.��������-�-�/�'��=�������-�-�g�6��	�B������w��������-�-�/�0�	
���'�*�*��G�G���g�r�5�	2������r�5�)�������r�5�)��������-�-�/�%���@������u�e�$�������-�-�/�0r/c���|jjdd�}|jj|d�}|jj�}|jj�|j	||jj��|j	|jj�|f�|j	|jj|�|f�|jj|�|j|jj��|jj
|dd�|j	|jj�|f�|j	|jj|�|f�|jj|dd�|j	|jj�||f�|j	|jj|�d�|jtj|jjddd�|jtj|jjd�|jtj|jj|dd�|jtj|jj|dd�|jj||�|j	|jj�d�|j	|jj|�d�y)Nrr\rC�nonexistent�otherparentrg)r�r^r��detachr&rr��moverurvr)r*r�r��prevs    r-�test_detach_reattachz!TreeviewTest.test_detach_reattachsu���'�'�.�.��U�+�������w��.���w�w�#�#�%������������t�w�w�3�3�5�6�������-�-�/�'��=�������-�-�g�6��	�B�	
�����w��������-�-�/�0�	
������"�e�,�������-�-�/�'��=�������-�-�g�6��	�B�	
�����U�B��&�������-�-�/�'�5�1A�B�������-�-�g�6��;�	
���'�*�*��G�G���m�R��	8����'�*�*��G�G�N�N�M�	+����'�*�*��G�G���e�]�E�	;����'�*�*��G�G���e�R��	4�	
�����w��&�������-�-�/��4�������-�-�g�6��;r/c�p�|j|jjd�d�|j|jjd�d�|j|jji�d�|jtj
|jjd�y)N�	somethingFrT)r&r��existsrurvrrws r-�test_existszTreeviewTest.test_exists<s{�����������4�e�<����������+�T�2����������+�U�3�
	
���'�*�*�D�G�G�N�N�D�Ar/c��|j|jj�d�|jjdd�}|jj|�|j|jj�|�|jj	|�|j|jj�d�|jtj|jjd�y)Nrr\r)r&r�r?r^rhrurvr)r*r�s  r-�
test_focuszTreeviewTest.test_focusFs������������"�-������r�5�)�����
�
�e�����������%�0������u�����������"�-�	
���'�*�*�D�G�G�M�M�4�@r/c�*�|j|jjd�t�|jjdd��|j	|jjdd�d�|j	|jjdd��d�|jtj|jjdd��|jtj|jjdd��y)Nr�rrre)r�r�)r�)r4r��headingr�r&rurvrrws r-�test_headingzTreeviewTest.test_headingTs������d�g�g�o�o�d�3�T�:�	
������4��(����������v�6��=����������D��9�4�@�	
���'�*�*�D�G�G�O�O�T��	�	�	
���'�*�*�D�G�G�O�O�T��	�	r/c	�����fd�}g��jj��jjd�fd����jjdd���jj	�|dd��s�jd�g��jjj}�jjdt�jjdd������j|�jjj�|dd��s�jd�yy)	Nc�(��tdk\rW�j�jj|�d��j�jj	||�d�t�j||��jj
�y)N)rrr�r�)r
r&r��identify_column�identify_regionrrp)r~rr*s  �r-�simulate_heading_clickzBTreeviewTest.test_heading_callback.<locals>.simulate_heading_clickesi����V�#�� � ����!8�!8��!;�T�B�� � ����!8�!8��A�!>�	�J� ����!�Q�/��G�G�N�N�r/r�c�&���jd�SrOr�r�s�r-r�z4TreeviewTest.test_heading_callback.<locals>.<lambda>os���g�n�n�T�.Br/r�rr�r=z>The command associated to the treeview heading wasn't invoked.)
r�rir�r�rpr`r��_tclCommandsr7r&)r*r��commandsr�s`  @r-�test_heading_callbackz"TreeviewTest.test_heading_callbackds����	���������������&B��C������t�3��'�������	�q�!�$���I�I��
����7�7�>�>�.�.��������c�$�'�'�/�/�$��/�*M�&N��O�����4�7�7�>�>�#>�#>�?��q�!�$���I�I��
�r/c��|jtj|jjd�|j|jj	d�d�|jj
dd�}|jj
dd�}|jj
|d�}|jj
|d�}|j|jj	|�d�|j|jj	|�d�|j|jj	|�d�|j|jj	|�d�|jj|dd�|j|jj	|�d�|j|jj	|�d�|jj|�|j|jj	|�d�|jj|�|j|jj	|�d�|jj|�|jtj|jj|�y)N�whatrrr\r�)
rurvrr�r^r&r^r�r�rh)r*r�r��c1�c2s     r-rnzTreeviewTest.test_index�s������'�*�*�D�G�G�M�M�6�B���������r�*�A�.������r�5�)�������r�5�)��
�W�W�^�^�E�5�
)��
�W�W�^�^�E�5�
)����������u�-�q�1���������r�*�A�.���������r�*�A�.���������u�-�q�1������U�B��"���������u�-�q�1���������u�-�q�1�	
�����u����������r�*�A�.������r����������r�*�A�.�	
�����u�����'�*�*�D�G�G�M�M�2�>r/c	��|jtj|jjdd�|jtj|jjddd��|jtj|jjddd��|j|jj
|jj	ddd����|j|jj
|jj	ddd����|jtj|jjdd�|jj	ddd	�}|j|d	�|jtj|jjddd	�|jtj|jjddtd	��d
}|jj	dd|f��}|j|jj|d�|jr|fn|�|j|jj|d��|jr|fn|�|jj||jj|jj|d�����|j|jj|d��|jr|fn|�|j|jj|�t�|jj|d��|j|jj|d���|jj	ddd
d|g��}|j|jj|d��|jrdd|fnd|z�|jj|g��|j|jj|d���|jj|d��|j|jj|d��|jrdnd�|jj	ddd|�d|��f��}|j|jj|d��|jr	d|�d|��fnd|�d|�d��|j|jj|jj	ddd��d��d�|j|jj|jj	dd|��d��|�|jj	ddd�}|j|d�|jj	ddd�}|j|d�|jtj|jjddd�|jtj|jjddd�y) Nr�r\r)�open�pleaseTF�middlez
first-itemuábar�r�r�rm��tagsr�r�z1 2 %s�r�rm)r�r�z1 2r�r9z	{a b c} {�}z
Label hererrr�gz0.0)rurvrr�r^rrhr&rr�rr'�	splitlistr4r�)r*�itemidr8r�s    r-�test_insert_itemzTreeviewTest.test_insert_item�s�����'�*�*�D�G�G�N�N�F�E�J�	
���'�*�*�D�G�G�N�N�B���	�	����'�*�*�D�G�G�N�N�B���	�	��������������r�5�t��(L�M�N��������������r�5�u��(M�N�O�	
���'�*�*�D�G�G�N�N�B��I�������E�<�8�������.����'�*�*�D�G�G�N�N�B���	����'�*�*�D�G�G�N�N�B���|�$�	&����w�w�~�~�b�%��	�~�:����������d�H�5�%)�%5�%5�%��5�	B���������d�4��8�%)�%5�%5�%��5�	B�	
�����T�$�)�)�"5�"5�d�g�g�l�l�4�PT�l�6U�"V��W���������d�4��8�%)�%5�%5�%��5�	B�	
���d�g�g�l�l�4�0�$�7�	
�����T�"��%���������d�4��8�9��w�w�~�~�b�%�q�!�U�m�~�<����������d���6�.2�.>�.>�#�s�E�*�!�E�)�	+�	
�����T���#���������d���6�7������T���'���������d���6�'+�'7�'7��U�	D��w�w�~�~�b�%���e�$�1&�~�'����������d�4��8�37�3C�3C�W���.�/�3C�!&��.�	0�
	
���������G�G�N�N�2�u�<�N�8�t�&�E��	�	
���������G�G�N�N�2�u�5�N�1��&�>��	�
������E�1�-�������%�������E�3�/�������'����'�*�*�D�G�G�N�N�B��u�M����'�*�*�D�G�G�N�N�B��r�Jr/c�z�|jt|jjd�|jtj
|jjd�|jtj
|jjd�|jtj
|jjd�|jtj
|jjd�|jjdd�}|jjdd�}|jj|d�}|jj|d�}|jj|d�}|j|jj�d�|jj
||�|j|jj�||f�|jj
|�|j|jj�|f�|jj||�|j|jj�|||f�|jj|�|j|jj�||||f�|jj�|j|jj�||||f�|jj||�|j|jj�|||f�|jj|�|j|jj�||f�|jj�|j|jj�||f�|jj||�|j|jj�||f�|jj|�|j|jj�|f�|jj�|j|jj�|f�|jjddd��|jj
d�|j|jj�d�|jjddd	��|jj
d	�|j|jj�d
�|jjddd��|jj
d�|j|jj�d�|jjddd
��|jj
d
�|j|jj�d�|jj
�|j|jj�d�|jj
||f�|j|jj�||f�|jj||f�|j|jj�|||f�|jj||f�|j|jj�||f�|jj||f�|j|jj�||f�y)Nr�r�rr\rC�with spacesr�)r�{brace)r�
unicode€)rsbytes€)ubytes€)ru�	TypeErrorr��	selectionrvr�
selection_set�
selection_add�selection_remove�selection_toggler^r&)r*r�r�rr�c3s      r-�test_selectionzTreeviewTest.test_selection�s������)�T�W�W�%6�%6��?����'�*�*�D�G�G�,A�,A�6�J����'�*�*�D�G�G�,A�,A�6�J����'�*�*�D�G�G�,D�,D�f�M����'�*�*�D�G�G�,D�,D�f�M������r�5�)�������r�5�)��
�W�W�^�^�E�5�
)��
�W�W�^�^�E�5�
)��
�W�W�^�^�E�5�
)��������*�*�,�b�1������b�%�(�������*�*�,�r�5�k�:������b�!�������*�*�,�r�e�4������b�%�(�������*�*�,�r�2�u�o�>������e�$�������*�*�,�u�b�"�e�.D�E�������������*�*�,�u�b�"�e�.D�E���� � ���+�������*�*�,�r�2�u�o�>���� � ��$�������*�*�,�r�5�k�:���� � �"�������*�*�,�r�5�k�:���� � ��R�(�������*�*�,�r�5�k�:���� � ��'�������*�*�,�r�e�4���� � �"�������*�*�,�r�e�4������r�5�]��3������m�,�������*�*�,�.>�?������r�5�X��.������h�'�������*�*�,�k�:������r�5�_��5������o�.�������*�*�,�.@�A������r�5�%9��:������2�3�������*�*�,�.D�E�������������*�*�,�b�1�	
�����r�5�k�*�������*�*�,�r�5�k�:������r�5�k�*�������*�*�,�u�b�%�.@�A���� � �%���-�������*�*�,�r�5�k�:���� � �"�b��*�������*�*�,�r�5�k�:r/c���ddg|jd<|jjddddg��}|j|jj|�ddd	��|jj|dd�|j|jj	|d��|j
rd
nd�dg|jd<|j|jj|�ddi�|jj|dd�|j|jj|d��d�|j|jj	|d��|j
rd
nd�|jj|dd�|j|jj|d�|j
rdnd�|j|jj	|d��|j
rdnd�|j|jj|�|j
rddinddi�|j
tj|jj|d�|j
tj|jj|dd�|j
tj|jjd�y)N�A�Br�rr\rWrr�)rr)rWrWza a)r�)rrWzb a�{�123)rrWz123 a�notme)	r�r^r&rr�rrurvr)r*r�s  r-r+zTreeviewTest.test_set7s:��!�3�Z����	���w�w�~�~�b�%��c�
�~�;����������T�*�#�C�,@�A������D�#�s�#���������d�4��8�'+�'7�'7��U�	D�"�U����	����������T�*�S�#�J�7������D�#�s�#���������T�#��6��<���������d�4��8�'+�'7�'7��U�	D�	
�����D�#�s�#���������T�3�/� $� 0� 0��e�	=���������d�4��8�'+�'7�'7��W�	F���������T�*�'+�'7�'7�#�s��c�5�\�	K�	
���'�*�*�D�G�G�K�K��s�C����'�*�*�D�G�G�K�K��s�C�H�	
���'�*�*�D�G�G�K�K��Ar/c�j�	�g�	|jjdddg��}|jjdddg��}|jjdd�	fd��|jjdd�	fd��|jj�|jj	�t�}t�}t
d	d
d�D]W}t|�dk(rnG|jj|�}|s�1||vs�6|j|�|j|��Y|jt|�d�|D]}t|jd	|��|jt�	�d
�t�	ddd��	ddd��D]}|j|d��y)Nrr\�callr	r|c�&���jd�Sr�r��r��eventss �r-r�z,TreeviewTest.test_tag_bind.<locals>.<lambda>\�����
�
�a�(r/r�c�&���jd�S)Nrmr�r%s �r-r�z,TreeviewTest.test_tag_bind.<locals>.<lambda>^r'r/rrrrmrr�r)
r�r^�tag_bindrirprrr
�identify_rowr�r&r�zip)
r*r�r��pos_y�foundrr�rr�r&s
         @r-�
test_tag_bindzTreeviewTest.test_tag_bindWsj����������r�5��x��8�������r�5��x��8��������!2�(�	*�������!4�(�	*�	
�������������������q�#�r�"�A��5�z�Q����g�g�*�*�1�-�G��7�%�/��	�	�!���	�	�'�"�
#�	
����U��Q�'��A� ����!�Q�/��
	
����V��a�(��v�c��c�{�F�1�4�a�4�L�1�C����S�&�)�2r/c�4�|jt|jj�|jtj
|jjdd��|jjdd��|j
t|jjdd��d�|j
t|jjdd���d�|j|jjd�t�y)Nr��blue)�sky)r�r�)
rurr��
tag_configurervrr&r7r4r�rws r-�test_tag_configurezTreeviewTest.test_tag_configurews������)�T�W�W�%:�%:�;����'�*�*�D�G�G�,A�,A���	�	 ������f���8�����T�W�W�2�2�6�<�H�I��	�����T�W�W�2�2�6�d�2�K�L��	����d�g�g�3�3�F�;�T�Br/c�:�|jjddddg��}|jjddddg��}|jt|jj�|jt
|jjdd�|j
|jj	d|��|j|jj	d|��|j|jj	d|��|j
|jj	d|��|j|jj	d	|��|j|jj	d	|��|j|jj	d�|f�|j|jj	d�|f�|j|jj	d	�d
�y)Nrr\zItem 1�tag1)rer
zItem 2�tag2znon-existing�tag3rC)	r�r^rur�tag_hasrr�rr&)r*r�r�s   r-�test_tag_haszTreeviewTest.test_tag_has�ss�������r�5�x�v�h��G�������r�5�x�v�h��G�����)�T�W�W�_�_�5����(�D�G�G�O�O�V�^�L�����������6�7�����������7�8�����������7�8�����������6�7�����������7�8�����������7�8����������0�5�(�;����������0�5�(�;����������0�"�5r/)!r]r^r_r�rgr%r�r�ryr�r	r�r;r�r�r�rJr�r�r�r�r�r�r�rrnrrr+r.r3r9r�r�s@r-r�r�]s�����G�)�1�E�9�"J�
:�
��A��B��B�L���A��2��2���A��;��;�
��A��9��9�
3�25�6�21�.'<�RB�A�� �F?�<JK�XD;�LB�@*�@
C�
6r/r�c��eZdZdZdZd�Zy)�
SeparatorTest)rr�r�rQr�r�c�B�tj|jfi|��Sr3)r�	Separatorr'r�s  r-r%zSeparatorTest.create�rJr/NrKrCr/r-r;r;�s���G�"�N�2r/r;c��eZdZdZd�Zy)�SizegripTest)rr�rQr�c�B�tj|jfi|��Sr3)r�Sizegripr'r�s  r-r%zSizegripTest.create�rsr/Nr�rCr/r-r?r?�s���G�
1r/r?c��eZdZd�Zd�Zy)�DefaultRootTestc�B�|jtj�yr3)�_test_widgetrr�rws r-�
test_framezDefaultRootTest.test_frame�������#�)�)�$r/c�B�|jtj�yr3)rErr�rws r-�
test_labelzDefaultRootTest.test_label�rGr/N)r]r^r_rFrIrCr/r-rCrC�s��%�%r/rC�__main__)4�unittestrvrr�test.supportrrrj�test.test_ttk_textonlyr�test.test_tkinter.supportrr	r
rrr
�test.test_tkinter.widget_testsrrrrrr�TestCaserar�r�r�r�r�r�r�r#rmr�r�r�r�r-�skipIfrkrGrMr�r�r;r?rC�	tests_guir]�mainrCr/r-�<module>rTs����!�-�
�-�3�3�P�P�	���3B�2�3B�l5<���!2�!2�5<�p�-�~���-�.�.�$�h�&7�&7�.�/�.��-�.��)�8�+<�+<��/��28�*�8�<�-�.�I�!�8�#4�#4�I�/�I�"�-�.�!�"�H�$5�$5�!�/�!�0�-�.�SG�'��):�):�SG�/�SG�l�&�(?�@�x1�"�H�$5�$5�x1�A�x1�v�&�(?�@�z�9�h�/�/�z�A�z�z�&�(?�@�D:�(�(�*;�*;�D:�A�D:�N�-�.�3H�'��):�):�3H�/�3H�l�&��(9�(9��0�-�.�hB�"�H�$5�$5�hB�/�hB�V�-�.�/b�(�(�*;�*;�/b�/�/b�d��������)�5�7��-�.�2�&��(9�(9�2�/�7�2��-�.�b=�%�x�'8�'8�b=�/�b=�J�&�(?�@�m�)�X�.�.�m�A�m�`�-�.�r6�%�x�'8�'8�r6�/�r6�j�-�.�2�&��(9�(9�2�/�2��-�.�1�%�x�'8�'8�1�/�1�%�-�x�/@�/@�%�	�O�\�9��>�9�n��o����M�=��k�<��_�
�	��z���H�M�M�O�r/

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists