Sindbad~EG File Manager

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

�

'Μg4y����ddlZddlZddlZddlZddlmZddlmZddlmZejd�Z
ddlZddlmZddl
m
Z
	ddlmZmZeeee
j,j/d	���ZGd
�dej2�ZGd�d
ej2�ZGd�dej2�Zd�Zedk(rej>�yy#e$rej$xZZY��wxYw)�N)�support)�
import_helper)�	os_helper�_tkinter)�Tcl)�TclError)�INT_MAX�PY_SSIZE_T_MAX�.c��eZdZd�Zy)�TkinterTestc�.�|jttjd�|jttji�|jttjd�|jttjdh�y)NT�string�set)�assertRaises�	TypeErrorr�_flatten��selfs �*/usr/local/lib/python3.12/test/test_tcl.py�testFlattenLenzTkinterTest.testFlattenLensf�����)�X�%6�%6��=����)�X�%6�%6��;�	
���)�X�%6�%6��A����)�X�%6�%6���@�N)�__name__�
__module__�__qualname__r�rrr
r
s��Arr
c��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d �Z"e#jHe%jLd!k(d"�d#��Z'd$�Z(d%�Z)d&�Z*d'�Z+d(�Z,d)�Z-d*�Z.d+�Z/d,�Z0d-�Z1d.�Z2d/�Z3e4jjd0��Z6y1)2�TclTestc�t�t�|_|jjj�|_y�N)r�interp�tk�wantobjectsrs r�setUpz
TclTest.setUp's$���e����;�;�>�>�5�5�7��rc��|j}|jd�|j|jd�d�y)N�set a 1�set a�1)r!�eval�assertEqual�r�tcls  r�testEvalzTclTest.testEval+s0���k�k�������������'�*�3�/rc�^�|j}|j|jd�d�y)Nzset a "a\0b"�ab�r!r*r)r+s  r�test_eval_null_in_resultz TclTest.test_eval_null_in_result0s$���k�k��������/�2�H�=rc�^�|j}|j|jd�d�y)Nzset a "<\ud83d\udcbb>"�<💻>r0r+s  r�test_eval_surrogates_in_resultz&TclTest.test_eval_surrogates_in_result4s%���k�k��������";�<�n�Mrc�^�|j}|jt|jd�y)Nr'�r!rrr)r+s  r�testEvalExceptionzTclTest.testEvalException8s!���k�k�����(�3�8�8�G�4rc�^�|j}|jt|jd�y)Nz
this is wrongr6r+s  r�testEvalException2zTclTest.testEvalException2<s!���k�k�����(�3�8�8�O�<rc��|jj}|jd�|jd�}d}|j||�y)N�7set a "\u20ac \ud83d\udcbb \0 \udcab"; regexp -about $ar'�€ 💻  ���)r!r"r)r*�rr,�a�expecteds    r�test_eval_returns_tcl_objz!TclTest.test_eval_returns_tcl_obj@s?���k�k�n�n�����K�L��H�H�W���<������H�%rc��|j}|jddd�|j|jdd�d�y)Nrr>r()r!�callr*r+s  r�testCallzTclTest.testCallGs6���k�k������s�3��������%��,�S�1rc��|j}|jddd�|j|jd�d�|j|jdd�d�|j|j	d�d�|jddd�|j|jd�d�|j|jdd�d�|j|j	d�d�y)Nrr>r/r'�€)r!rBr*�getvarr)r+s  r�test_call_passing_nullzTclTest.test_call_passing_nullLs����k�k�������V�$�������C��(�3�������%��-�x�8�������'�*�H�5������Z�(�������C��,�7�������%��-�|�<�������'�*�L�9rc�`�|j}|jt|jdd�y)Nrr>�r!rrrBr+s  r�testCallExceptionzTclTest.testCallExceptionXs#���k�k�����(�3�8�8�E�#�6rc�b�|j}|jt|jddd�y)N�this�is�wrongrIr+s  r�testCallException2zTclTest.testCallException2\s%���k�k�����(�3�8�8�F�4��@rc�^�|jj}|jd�|jdd�}d}|jrT|jt
|�|�|j|j|�|j|jd�y|j||�y)Nr;rr>r<�regexp)	r!r"r)rBr#r*�strr�typenamer=s    r�test_call_returns_tcl_objz!TclTest.test_call_returns_tcl_obj`s����k�k�n�n�����K�L��H�H�U�C� ��<��������S��V�X�.����Q�X�X�x�0����Q�Z�Z��2����Q��)rc��|j}|jdd�|j|jd�d�y)Nr>r(r'�r!�setvarr*r)r+s  r�
testSetVarzTclTest.testSetVarls2���k�k���
�
�3�s��������'�*�3�/rc���|j}|jdd�|j|jd�d�|j|j	dd�d�|j|jd�d�|jdd�|j|jd�d�|j|j	dd�d�|j|jd�d�y)Nr>r/rr'rE)r!rWr*rFrBr)r+s  r�test_setvar_passing_nullz TclTest.test_setvar_passing_nullqs����k�k���
�
�3���������C��(�3�������%��-�x�8�������'�*�H�5��
�
�3�
�#�������C��,�7�������%��-�|�<�������'�*�L�9rc��|j}|jdd�|j|jd�d�y)N�a(1)r(zset a(1)rVr+s  r�testSetVarArrayzTclTest.testSetVarArray}s2���k�k���
�
�6�#��������*�-�c�2rc��|j}|jd�|j|jd�d�y)Nr&r>r(�r!r)r*rFr+s  r�
testGetVarzTclTest.testGetVar�s/���k�k�������������C���-rc��|j}|jd�|j|jd�d�y)Nz
set a(1) 1r\r(r_r+s  r�testGetVarArrayzTclTest.testGetVarArray�s0���k�k�������������F�+�C�0rc�^�|j}|jt|jd�y�Nr>�r!rrrFr+s  r�testGetVarExceptionzTclTest.testGetVarException�s!���k�k�����(�3�:�:�c�2rc�^�|j}|jt|jd�y)Nr\rer+s  r�testGetVarArrayExceptionz TclTest.testGetVarArrayException�s!���k�k�����(�3�:�:�f�5rc�\�|jj}|jd�|jd�}d}|jrT|jt
|�|�|j|j|�|j|jd�y|j||�y)Nr;r>r<rQ)	r!r"r)rFr#r*rRrrSr=s    r�test_getvar_returns_tcl_objz#TclTest.test_getvar_returns_tcl_obj�s����k�k�n�n�����K�L��J�J�s�O��<��������S��V�X�.����Q�X�X�x�0����Q�Z�Z��2����Q��)rc���|j}|jdd�|j|jd�d�|j	d�|j|jd�d�y)Nr>�z
info exists ar(�0�r!rWr*r)�unsetvarr+s  r�testUnsetVarzTclTest.testUnsetVar�sW���k�k���
�
�3�q��������/�2�3�7����S��������/�2�3�7rc��|j}|jdd�|jdd�|j|jd�d�|j|jd�d�|j	d�|j|jd�d�|j|jd�d�y)	Nr\rlza(2)�zinfo exists a(1)r(zinfo exists a(2)rmrnr+s  r�testUnsetVarArrayzTclTest.testUnsetVarArray�s����k�k���
�
�6�!���
�
�6�!��������"4�5�c�:�������"4�5�c�:����V��������"4�5�c�:�������"4�5�c�:rc�^�|j}|jt|jd�yrd)r!rrror+s  r�testUnsetVarExceptionzTclTest.testUnsetVarException�s!���k�k�����(�3�<�<��4rc�.�ddddddddd	d
ddd
zdd
zf
S)Nrrl���i���i�ll����l����l����ll����rri�rrs r�get_integerszTclTest.get_integers�s4���1�b����������4��!�T�'��#�	#rc	��|jj}|j�D]�}|j|j	d|z�|�|j|j	d|z�|�|j|j	d|zjdd��tdkr|n
td|z��|j|j	d|z�|���|j|j	d�d�|jt|j�|jt|jd	d
�|jt|jd�|jt|jd�|jt|jd
�|jtttf|jd�|jtttf|jd�y)Nz %d z %#o �o���	rz%oz %#x �*�42�10s42�E@r>z42u42�)
r!r"rxr*�getint�replace�tcl_version�intrrr�
ValueError�UnicodeEncodeError)rr,�is   r�test_getintzTclTest.test_getint�s����k�k�n�n���"�"�$�A����S�Z�Z���
�3�Q�7����S�Z�Z��!��4�a�8�
���S�Z�Z��1��(=�(=�c�2�(F�G�"-��"6�Q�C��q��M�
K����S�Z�Z��!��4�a�8�%�	
������B���,����)�S�Z�Z�0����)�S�Z�Z��t�<����)�S�Z�Z��7����)�S�Z�Z��6����(�C�J�J��4����9�j�(�;��*�*�f�	.����-�z�8�D��*�*�j�	2rc���|jj}|j|jd�d�|j|jd�d�|j|jd�d�|j|jd�d�|j	t
|j�|j	t
|jdd�|j	t
|jd�|j	t|jd	�|j	t
ttf|jd
�|j	tttf|jd�y)Nz 42 r�z 42.5 g@E@r~z42.5r�s42.5r>z42.5u42.5�)	r!r"r*�	getdoublerrrr�r�r+s  r�test_getdoublezTclTest.test_getdouble�s���k�k�n�n��������v�.��5�������x�0�$�7�������t�,�d�3�������r�*�D�1����)�S�]�]�3����)�S�]�]�F�D�A����)�S�]�]�G�<����(�C�M�M�3�7����9�j�(�;��-�-��	3����-�z�8�D��-�-��	7rc�2�|jj}|j|jd�d�|j|jd�d�|j|jd�d�|j|jd�d�|j	t
|j�|j	t
|jdd�|j	t
|jd�|j	t
|jd�|j	t|jd	�|j	t
ttf|jd
�|j	tttf|jd�y)N�onTr(r~rFson��?r>zonuon�)	r!r"�assertIs�
getbooleanrrrr�r�r+s  r�test_getbooleanzTclTest.test_getboolean�s���k�k�n�n���
�
�c�n�n�T�*�D�1��
�
�c�n�n�S�)�4�0��
�
�c�n�n�R�(�$�/��
�
�c�n�n�Q�'��/����)�S�^�^�4����)�S�^�^�T�3�?����)�S�^�^�U�;����)�S�^�^�S�9����(�C�N�N�C�8����9�j�(�;��.�.�&�	2����-�z�8�D��.�.�*�	6rc���|j}tj}|jtj|�t|d�5}|j
d�ddd�|j|�|j|jd�d�|j|jd�d�|j|jd�d�y#1swY�~xYw)	N�wzKset a 1
            set b 2
            set c [ expr $a + $b ]
            r'r(�set b�2zset c�3�
r!r�TESTFN_ASCII�
addCleanup�unlink�open�write�evalfiler*r)�rr,�filename�fs    r�testEvalFilezTclTest.testEvalFile�s����k�k���)�)�����	�(�(�(�3�
�(�C�
 �A�
�G�G��
�!�
	���X��������'�*�3�/�������'�*�3�/�������'�*�3�/�!�
 �s�	C�C!c��|j}tj}|jtj|�t|d�5}|j
d�ddd�|j|�|j|jd�d�|j|jd�d�y#1swY�]xYw)Nr�z>
            set a "ab"
            set b "a\0b"
            r'r/r�r�r�s    r�test_evalfile_null_in_resultz$TclTest.test_evalfile_null_in_result�s����k�k���)�)�����	�(�(�(�3�
�(�C�
 �A�
�G�G��
�!�
	���X��������'�*�H�5�������'�*�H�5�!�
 �s�	B7�7Cc���|j}|jdd�}|j|jdd|�|jddd�tj}|jtj
|�t
|d�5}|jd�ddd�tdk\r"|jt|j|�n2|j|�|j|jd�d�t
|d�5}|jd	�ddd�|j|�|j|jd
�d�y#1swY��xYw#1swY�HxYw)N�encoding�systemzutf-8�wbs*
            set a "<��>"
            r|r'r3s0
            set b "<\ud83d\udcbb>"
            r�)r!rBr�rr�r�r�r�r�rrr�r*r))rr,r�r�r�s     r�"test_evalfile_surrogates_in_resultz*TclTest.test_evalfile_surrogates_in_result
s"���k�k���8�8�J��1��������*�h��A�����X�w�/��)�)�����	�(�(�(�3�
�(�D�
!�Q�
�G�G��
�"��&� ����h����h�?��L�L��"����S�X�X�g�.��?�
�(�D�
!�Q�
�G�G��
�"�	���X��������'�*�N�;�"�
!��"�
!�s�E�E(�E%�(E1c��|j}d}	tj|�|j	t
|j|�y#t$r
}Yd}~�0d}~wwxYw)N�
doesnotexists)r!�os�remove�	Exceptionrrr�)rr,r��es    r�testEvalFileExceptionzTclTest.testEvalFileException#sN���k�k��"��	��I�I�h��	
���(�3�<�<��9���	���	�s�A�	A�Ac�^�|j}|jt|jd�y)Nzpackage require DNEr6r+s  r�testPackageRequireExceptionz#TclTest.testPackageRequireException,s"���k�k�����(�3�8�8�,A�Br�win32zRequires Windowsc��tjjtj�}|ddk7rtjd��dtjd�d|d�d|d	d��}tjj|�stjd
��tj�5}|jd�tj|dd
g�}ddd�|jd�y#1swY�xYw)Nrl�:z$Absolute path should have drive partz\\�COMPUTERNAME�\rz$\�zCannot connect to UNC Path�TCL_LIBRARY�-czimport tkinter; print(tkinter)stkinter)r��path�abspath�sys�
executable�unittest�SkipTest�environ�existsr�EnvironmentVarGuard�unset�
subprocess�check_output�assertIn)r�fullname�unc_name�env�stdouts     r�testLoadWithUNCzTclTest.testLoadWithUNC0s����7�7�?�?�3�>�>�2���A�;�#���#�#�$J�K�K��%'�Z�Z��%?�$,�Q�K�$,�Q�R�L�2���w�w�~�~�h�'��#�#�$@�A�A�
�
*�
*�
,���I�I�m�$��,�,��t�%E�F�H�F�-�
	
�
�
�j�&�)�-�
,�s�5*C:�:Dc�����j��jddd��jddd���fd�}�jt�j��jt�jdd��jt�jd	��jt
�jd
�|dd�|d
d�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|d d�|d!d"�|d#d"�|d$d%�|d&d'�|d(d'�|d)d*�|d+t
d,��y)-Nrr>r��b�c�x���j|�}�j||��j|t�yr )�
exprstringr*�assertIsInstancerR��exprr?�resultrr,s   ��r�checkz&TclTest.test_exprstring.<locals>.checkJs1����^�^�D�)�F����V�X�.��!�!�&�#�.r�8.2�+6�8.2 + 6�spamr{rm�8.2 + 6z14.2�3.1 + $az6.1�2 + "$a.$b"z5.6�4*[llength "6 2"]�8�{word one} < "word $a"�4*2 < 7�hypot($a, 4)z5.0�5 / 4r(�5 / 4.0z1.25�$5 / ( [string length "abcd"] + 0.0 )�20.0/5.0z4.0�"0x03" > "2"�[string length "a½€"]r��[string length "a\xbd\u20ac"]�"abc"�abcu"a½€"ua½€z
"a\xbd\u20ac"z"a\0b"r/�2**64�)r!rBrrr�rrR�rr�r,s` @r�test_exprstringzTclTest.test_exprstringFs\����k�k�������Q�������Q��	/�
	
���)�S�^�^�4����)�S�^�^�U�D�A����)�S�^�^�Z�@����(�C�N�N�F�;�
�b�#��
�i�� �
�j�%� �
�m�U�#�
�!�3�'�
�&��,�
�i���
�n�e�$�
�g�s��
�i�� �
�4�f�=�
�j�%� �
�n�c�"�
�-�s�3�
�.��4�
�g�u��
�o�}�-�
��
�.�
�i��"�
�g�s�5�z�"rc������j��jddd��jddd���fd�}�jt�j��jt�jdd��jt�jd	��jt
�jd
�|dd�|d
d�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|d d�|d!d"�|d#d"��jt
�jd$�|d%t
d&��y)'Nrr>r�r�r�c�x���j|�}�j||��j|t�yr )�
exprdoubler*r��floatr�s   ��rr�z&TclTest.test_exprdouble.<locals>.checkls1����^�^�D�)�F����V�X�.��!�!�&�%�0rr�r�r�r�r{�r�gffffff,@r�gffffff@r�gffffff@r�g @r�r�r�g@r�r�r�g�?r�r�g@r�r�g@r�r�r�r�)r!rBrrr�rr�r�s` @r�test_exprdoublezTclTest.test_exprdoublehsI����k�k�������Q�������Q��	1�
	
���)�S�^�^�4����)�S�^�^�U�D�A����)�S�^�^�Z�@����(�C�N�N�F�;�
�b�#��
�i���
�j�#��
�m�S�!�
�!�3�'�
�&��,�
�i���
�n�c�"�
�g�s��
�i���
�4�d�;�
�j�#��
�n�c�"�
�-�s�3�
�.��4����(�C�N�N�G�<�
�g�u�U�|�$rc�����j��jddd��jddd���fd�}�jt�j��jt�jdd��jt�jd	��jt
�jd
�|dd�|d
d�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd��jt
�jd ��jt
�jd!�y)"Nrr>r�r�r�c�x���j|�}�j||��j|t�yr )�exprlongr*r�r�r�s   ��rr�z$TclTest.test_exprlong.<locals>.check�s1����\�\�$�'�F����V�X�.��!�!�&�#�.rr�r�r�r�r{rr��r�r��r��r�r�r�r�rlr�r�r��r�r�r�r�r�)r!rBrrr�rr�s` @r�
test_exprlongzTclTest.test_exprlong�sQ����k�k�������Q�������Q��	/�
	
���)�S�\�\�2����)�S�\�\�5�$�?����)�S�\�\�:�>����(�C�L�L�&�9�
�b�!��
�i���
�j�!��
�m�Q��
�!�1�%�
�&��*�
�i���
�n�a� �
�g�q��
�i���
�4�a�8�
�j�!��
�n�a� �
�-�q�1�
�.��2����(�C�L�L�'�:����(�C�L�L�'�:rc�����j��jddd��jddd���fd�}�jt�j��jt�jdd��jt�jd	��jt
�jd
�|dd�d
D]#}||d�|d|zd�|d|zd��%dD]#}||d�|d|zd�|d|zd��%|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd�|dd��jt
�jd �|d!d�y)"Nrr>r�r�r�c����j|�}�j||��j|t��j	|t
�yr )�exprbooleanr*r�r��assertNotIsInstance�boolr�s   ��rr�z'TclTest.test_exprboolean.<locals>.check�sA����_�_�T�*�F����V�X�.��!�!�&�#�.��$�$�V�T�2rr�r�r�r�r{F)rm�false�no�offz"%s"z{%s})r(�true�yesr�Tr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�)r!rBrrrr)rr��valuer,s`  @r�test_exprbooleanzTclTest.test_exprboolean�s�����k�k�������Q�������Q��	3�	
���)�S�_�_�5����)�S�_�_�e�T�B����)�S�_�_�j�A����(�C�O�O�V�<�
�b�%��0�E��%����&�5�.�%�(��&�5�.�%�(�1�0�E��%����&�5�.�$�'��&�5�.�$�'�0�	�i���
�j�$��
�m�T�"�
�!�4�(�
�&��.�
�i���
�n�d�#�
�g�t��
�i���
�4�d�;�
�j�$��
�n�d�#�
�-�t�4�
�.��5����(�C�O�O�W�=�
�g�t�rc�����j���fd�}|dd�|dd�|dd�|dd�|dd�|d	d�|d
d�|dd�y)Nc	����jd|�}�j�r)�j||��j|t�y�j||t
t	|��f��j|t�y�Nr�)rBr#r*r�r�r�rRr�s   ��rr�z$TclTest.test_booleans.<locals>.check�si����X�X�f�d�+�F���� �� � ���2��%�%�f�c�2��
�
�f�t�S��X��-?�&@�A��%�%�f�c�2rrTrr�rFrrz1 < 2z1 > 2)r!r�s` @r�
test_booleanszTclTest.test_booleans�sc����k�k��	3�	�f�d��
�e�T��
�d�D��
�g�u��
�d�E��
�e�U��
�g�t��
�g�u�rc�H�|j}|j�D]�}|jdt|��}|jr)|j||�|j
|t��S|j|t|��|j
|t���yr)r!rxrBrRr#r*r�r�)rr,r�r�s    r�test_expr_bignumzTclTest.test_expr_bignum�s���k�k���"�"�$�A��X�X�f�c�!�f�-�F����� � ���+��%�%�f�c�2�� � ���Q��0��%�%�f�c�2�%rc	�����fd�}�j|d��jrdnd��j|d��jrdnd��j|d�d��j|d�d��j|d�d��j|d	�d	��j|d
�d
��j|d�d��j|d�d�tjd
k7r0�j|d�d��j|d�d��j|d��jrdnd	��j|d��jrdnd��j|d��jrdnd��j	�D]1}�j||��jr|n
t|���3ddddtjjtjjtjjtjjfD]H}�jr�j||�|��(�jt||��|��J�jrz|td��}�j||��j|td��td���j|td��td��nh�jt|td���td���jt|td���td���j|d��jrdnd��j|dd d!gg��jrd"�yd#�y)$Nc�>���jjdd|�S)Nr�_)r!rB)rrs �r�	passValuez.TclTest.test_passing_values.<locals>.passValue�s����;�;�#�#�E�3��6�6rTr(Frmr�	string€�
string💻�string�	string½�
string€ustring💻r��<���>�<€>�<������>r3�string�str��ing�
strÀ€ingsstr�ingustr½ingr�r����UUUUUU�?�nan�inf�rlr���333333@z1 2 3.4r>r��c)r>)r�r&�a {b c})r*r#r��platformrxrR�
float_info�min�maxr��assertNotEqual)rrr�r�s`   r�test_passing_valueszTclTest.test_passing_values�sP���	7�	
����4��$�2B�2B�$��L�����5�)�D�4D�4D�5�#�N�����8�,�h�7�����>�2�N�C�����#5�6�8J�K�����<�0�,�?�����#3�4�6F�G�����#5�6�8J�K�����#9�:�/�	1��<�<�7�"����Y�'=�>�'�
)����Y�'O�P�+�
-�����=�1�*.�*:�*:���	N�����#4�5�.2�.>�.>�*�DT�	V�����=�1�*.�*:�*:���	N��"�"�$�A����Y�q�\��0@�0@�1�c�!�f�M�%��s�D�#��.�.�$�$�c�n�n�&8�&8��>�>�%�%�%����(:�(:�':�<�A����� � ��1��q�1�� � ��y��|�!4�a�8�
<�����%��,�'�A�����1�%����Y�u�U�|�4�e�E�l�C����Y��e��}�5��e��}�E����U�9�U�5�\�#:�;�U�5�\�J����U�9�e�E�l�]�#;�<�u�U�|�m�L�����#3�4�-1�-=�-=�)�9�	N�����C�#�s��#4�5�.2�.>�.>�*�	O�DM�	Orc�P���d��fd�}�jjd|��j�jjjd�d,�j
d���fd�}�fd�}|dd�|dd	�|d
�|d�|d�|d
�tjdk7r|dd�|dd�|d�|dd
�|dd�|dd�|dd�|d�|d�|d�|dd�|dd�|dd ��j�D]}||t|���d!D]}||t|���d"tjjtjjtjjtjjfD]}|||���|td#�|��|td#�|��|d$d�|d%d&�|d'd(gd)d*gd+ggd&�y)-Nc���|�|Sr r)�argr�s �r�testfuncz+TclTest.test_user_command.<locals>.testfuncs
����F��Jrr1)�eqc����|�|}d��jjd|�}�j�t�|�|��j|t�|||�y)Nr1)r!rBr�rR)rr?r2�rr�rs    ��rr�z(TclTest.test_user_command.<locals>.check$s\����� ���F���� � ��U�3�A��!�!�&�#�.��v�x� ��!�!�!�S�)��q�(�Orc�X���jt|�|t|�dz��y)Ng�����|�=)�delta)�assertAlmostEqualr��abs)�actualr?rs  �r�float_eqz+TclTest.test_user_command.<locals>.float_eq.s+����"�"�5��=�(�),�X���)>�
#�
@rTr(Frmrustring½rrr�rrrr3r{sstrings	string€ustring€sstring�rrrrrrrsstr��ing€ustrÀ€ing€)r�r�rr r"r)rl)rr)r�r��5 6rz1 2 {3 4} {5 6} {}rlrrr�r�r;r )r!�
createcommandr�r"�
deletecommandr*r�r(rxrR�reprr)r*r+r�)rr1r�r:r�r�r�s`     @r�test_user_commandzTclTest.test_user_commands������	�	
���!�!�*�h�7���������4�4�j�A�		�d�.>�.>�		�	@�	�d�C��
�e�S��
�h��
�l��
�n��
� �!��<�<�7�"��(�*�5��:�N�K�
�b�	�
�i��"�
�#�%9�:�
�m�\�*�
�c�2��
�l��
���
� �!�
�m�\�*�
��!1�2�
�+�-I�J��"�"�$�A��!�S��V��%�!�A��!�T�!�W��"�����+�+�S�^�^�-?�-?��>�>�%�%�%����(:�(:�':�<�A��!��!�<�	�e�E�l�x�(�
�u�U�|�m��)�
�b�"�
�
�*�,@�A�
�q�1�$��A���r�*�,@�Arc�
��|jj}d��fd�}|jjd|�|j|jjjd�|jd�|jd�d}|jdk\rT|jt��|�|j�j|�|j�jd�y|j�|�y)Nc�
��|�yr r)r0r>s �rr1z.TclTest.test_passing_tcl_obj.<locals>.testfuncWs����Arr1r;ztestfunc $ar<rrrQ)r!r"r<r�r=r)r#r*rRrrS)rr,r1r?r>s    @r�test_passing_tcl_objzTclTest.test_passing_tcl_objTs�����k�k�n�n����	�	
���!�!�*�h�7���������4�4�j�A����K�L����� �<�����q� ����S��V�X�.����Q�X�X�x�0����Q�Z�Z��2����Q��)rc��|jjj}|jjj}|j	t
|�|j	t
|dd�|j	t
|d�dddddd	d
ddd
ddddddddddgdfdddggdddgff|dddd�|jrdndfg}|jsd }nd!}||d"d#d$d%d&d�|fgz
}d'|j�d(t�d)|jj���}|D]$\}}|j||�|d*|�d+|����&|j	t|d,�y)-Nr>r�rr)r�)r�)r{r)�{}�r{)z""rE)z
a
 b	
 c
 �r>r�r&)s
a
 b	
 c
 rF)ua €�r>�€)ua 💻�r>u💻)sa €rG)sa 💻rI)sa ��rI)s	a��b c��d)r/zcd)r'�r>zb c)za b\ crJ)rJrJ)za 2)r>r�)�r>rrrK)za 3.4)r>�3.4)�r>r%rM)rrrr&�listrlr�r$r#)r(r�rL)�12rHu€rL)�rH�€r$�dict�createrPrHrQzwant objects? z, Tcl version: z, Tcl patchlevel: zarg=z, �{)r!r"�	splitlistrBrrr#r��info_patchlevelr*r)rrUrB�	testcasesr?�dbg_infor0�ress        r�test_splitlistzTclTest.test_splitlistfs����K�K�N�N�,�,�	��{�{�~�~�"�"�����)�Y�/����)�Y��S�9����)�Y��2�����/�0�)�1�0�8�@�<�%�%�(�� �#�$��
��H��C��:�
��s�C�j� 1�2�
�&�!�S�&�
)�$(�$4�$4� �!�
#�/
�	�6���>�H�>�H��
�&�(�B��/�6�
J��
�
�	
�	�
�'�'��d�k�k�6Q�6Q�6S�U��!�H�C�����Y�s�^�S�-0�(�;�
=�"�	
���(�I�s�3rc
��tj}|jj}d}|j	|||d�dddd��|j	|||�dddd��d}|j	|||d�d	dd
d��|j	|||�d	dd
d��|jt||d�|jt||d�|jd
dd	dddd�}|j	|||�|jrd	ndddd��|jdddd	dddd�}|jsdddd�}nd	ddd�}|j	|||�|�y)Nz#-a {1 2 3} -something foo status {}Fz1 2 3�foor{)�-a�
-something�status)r>�	somethingr_)r]�rlrrr�r^r\r_rDrarDz-a b -c )r]r�r�rNr]r^r_rrRrS)	�tkinter�
_splitdictr!r"r*r�RuntimeErrorrBr#)r�	splitdictr,r0r?s     r�test_splitdictzTclTest.test_splitdict�s����&�&�	��k�k�n�n��3������3��U�3��%�2�>�	@�����3��,����<�	>�E������3��U�3��E�T�B�	D�����3��,��%�4�@�	B�	
���,�	�3�
�C����,�	�3�8I�J��h�h�v��i��u�h��L������3��,�#�/�/�)�W��2�
/�	0��h�h�v�x��Y��e�X�r�K�����$�5�B�G�H�&�U�b�I�H�����3��,�h�7rc�������tj��jj��fd�����fd�}|d�|d�|d�|d�|d�|d�|d	�|d
�|d�|d�|d
�|d�|d�|d�|d�|d�|d�|d�|d�|d�|d�|d�|d�|d�y)Nc�*���jd|d�S)N�lindexr)rB)�sr,s �r�unpackz!TclTest.test_join.<locals>.unpack�s����8�8�H�a��+�+rc
����j��|g��|��j��|dg��|��j���|gg���|��j���|dgg���|��j���|gdg���|��j���|dgdg���|�y)Nr)r*)r�joinrrks ���rr�z TclTest.test_join.<locals>.check�s�������V�D�%��M�2�E�:����V�D�%���$4�5�u�=����V�F�4�%��	�?�$;�<�e�D����V�F�4�%����+=�$>�?��G����V�F�4�%��!��+=�$>�?��G����V�F�4�%���Q��+@�$A�B�E�Jrr{r�zsp amzsp	amzsp
amz 	
z{spam}z{sp am}z"spam"z"sp am"z{"spam"}z"{spam}"zsp\amz"sp\am"z	"{}" "{}"z"\z"{z"}z
\z
{z
}z\
z{
z}
)rb�_joinr!r")rr�rmr,rks` @@@r�	test_joinzTclTest.test_join�s�����}�}���k�k�n�n��	,�	K�	�b�	�
�f�
�
�g��
�h��
�h��
�g��
�h��
�i��
�h��
�i��
�j��
�j��
�h��
�j��
�k��
�e��
�d��
�d��
�f�
�
�e��
�e��
�f�
�
�e��
�e�rc���tj|tj�tj|tj�tj|tj
�yr )r�check_disallow_instantiationr�Tcl_Obj�TkttType�	TkappTypers r�test_new_tcl_objzTclTest.test_new_tcl_obj�sD���,�,�T�8�3C�3C�D��,�,�T�8�3D�3D�E��,�,�T�8�3E�3E�FrN)7rrrr$r-r1r4r7r9r@rCrGrJrOrTrXrZr]r`rbrfrhrjrprsrurxr�r�r�r�r�r�r�r�r��
skipUnlessr�r(r�r�r�r�r	r
rr-r?rBrZrfror�cpython_onlyrurrrrr%s4��8�0�
>�N�5�=�&�2�

:�7�A�
*�0�

:�3�
.�
1�
3�6�
*�8�;�5�#�2�*
7�6� 0�6�<�2:�C��X�������0�2D�E�*�F�*�* #�D%�>;�>&�P�&	3�.O�`6B�p*�$.4�`8�B#�J
���G��Grrc��eZdZd�Zej
ejee	kd�ejedzdd��d����Zej
ejee	kd�ejedzdd��d	����Zej
ejee	kd�ejedzd
d��d����Z
y)
�
BigmemTclTestc�"�t�|_yr )rr!rs rr$zBigmemTclTest.setUp�s���e��rzneeds UINT_MAX < SIZE_MAXrlr�F)�size�memuse�dry_runc�j�d|z}|jt|jjdd|d�y)N� r�indexr)r�
OverflowErrorr!rB)rr{rs   r�test_huge_string_callz#BigmemTclTest.test_huge_string_call�s0���d�
�����-����)9�)9�8�W�e�UV�Wrrrc��|jj}dd|zz}|jt|j|�|jt|j
|�|jt|j|�|jt|j|�|jt|j|�|jt|j|�|jt|j|�|jt|j|dd�|jt|jd|d�|jt|j|�|jt|jd|�|jt|j|�|jt|j|�|jt|j|�|jt|j|�|jt|j |�|jt|j"|t$�|jt|j&|�y)Nr(r�xr>)r!r"rr�r�r�r�r)r��record�adderrorinforWror�r�rrUr<r+r=�rr{r"rs    r�test_huge_string_builtinsz'BigmemTclTest.test_huge_string_builtins�s����[�[�^�^���c�D�j� �����-����E�:����-����u�=����-�����>����-����%�8����-����e�<����-����E�:����-����%�@����-����E�3��D����-����C���D����-����e�<����-����c�5�A����-����%�@����-�����>����-����e�<����-�����?����-����u�=����-��)9�)9�5�#�F����-��)9�)9�5�Arr�c��|jj}dd|zz}|jt|j|�|jt|j
|�|jt|j
d|�y)Nr(rr�)r!r"rr�r�ror�s    r�test_huge_string_builtins2z(BigmemTclTest.test_huge_string_builtins2sc��
�[�[�^�^���c�D�j� �����-����e�<����-����e�<����-����c�5�ArN)rrrr$rrwr�rvr	r
�
bigmemtestr�r�r�rrrryry�s���
����X����>�1�3N�O��W���W�q�[��E�B�X�C�P��X�
����X����>�1�3N�O��W���W�q�[��E�B�B�C�P��B�,
����X����>�1�3N�O��W���W�q�[��E�B�B�C�P��Brryc�v�tjr)t�}td|j	dd�d��yy)Nzpatchlevel =�info�
patchlevelT)�flush)r�verboser�printrB)r,s r�setUpModuler�s,������e��
�n�c�h�h�v�|�<�D�I�r�__main__) r�r�r�r��testr�test.supportrr�
import_modulerrbrr�	_testcapir	r
�ImportError�maxsize�tuple�mapr��TCL_VERSION�splitr��TestCaser
rryr�r�mainrrr�<module>r�s�����
�	��&�"�'�=�&�&�z�2�����+�1��C��X�1�1�7�7��<�=�>��
A�(�#�#�
A�{
G�h���{
G�|.B�H�%�%�.B�bJ��z���H�M�M�O���Q�+�"�{�{�*�G�n�+�s�C�C&�%C&

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