Sindbad~EG File Manager
�
&Μg:����dZddlZddlmZddlmZGd�d�ZGd�deej�ZGd �d
eej�Z e
dk(rejdd
��yy)zi Test mock_tk.Text class against tkinter.Text class
Run same tests with both by creating a mixin class.
�N)�requires)�TclErrorc�Z�eZdZdZdZedzZd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
d�Zd
�Zy)�TextTestz*Define items common to both sets of tests.zhello
world�
c��|j|jjd�d�|j|jjd�d�y)N�1.0r�end�)�assertEqual�text�get��selfs �8/usr/local/lib/python3.12/idlelib/idle_test/test_text.py� test_initzTextTest.test_inits<����������u�-�t�4���������u�-�r�2�c��|jj}dD]}|j||�d��dD]}|j||�d��y)N)���333333�?�1.-1r �1.0 lineend�1.end�1.33�insertr )r
g@�2.1�33.44�2.0)r
�indexr�rr�dexs r�test_index_emptyzTextTest.test_index_emptysO��� � �����C����U�3�Z��/��.�C����U�3�Z��/�.rc�6�|jj}|jjd|j�dD]}|j ||�d��dD]}|j ||�d��dD]}|j ||�d��y)Nr )rrrr )rrrz1.5)r
rz3.0)r
rr�hwrr s r�test_index_datazTextTest.test_index_data s���� � ����� � �������(�+�C����U�3�Z��/�,�2�C����U�3�Z��/�2�#�C����U�3�Z��/�#rc�j�|jj}|j}|jjd|j�||d�d�||dd�d�||d�d�||dd�d�||dd�d�||dd�d�||dd �d
�||dd�d
�||d �d�||dd
�d�||dd�|j�||dd�|j
�||dd�|j
�y)Nr r
r�h�1.1�1.3�hel�elr�hello�1.10r�2.3zello
worz2.5z0.0z5.0)r
rrrr$�hwn)rr�Equals r�test_getzTextTest.test_get-s���i�i�m�m��� � ��� � �������(�
�c�%�j�"��
�c�%����$�
�c�%�j�#��
�c�%����%�
�c�%����'�
�c�%����&�
�c�%��'��1�
�c�%�� �'�*�
�c�-� �$�'�
�c�%����-�
�c�%������)�
�c�%������*�
�c�%������*rc��|jj}|jj}|j}|d|j�||dd�|j
�|dd�||dd�|j
�|dd�||dd�d�|dd�||dd�d�|dd�||dd�d �|dd
�||dd�d�|dd
�||dd�d�y)Nr r
r�*z
*hello
world
rz*hello*
world
r.z*hello*
wor*ld
�xz*hello*
wor*ldx
�1.4zx
z*helx
lo*
wor*ldx
)r
rrrr$r/)rrrr0s r�test_insertzTextTest.test_insert@s������!�!���i�i�m�m��� � ���u�d�g�g��
�c�%������*��u�b��
�c�%������*��u�c��
�c�%���!2�3��}�c�"�
�c�%���!3�4��u�c��
�c�%���!4�5��u�c��
�c�%���!5�6��u�e��
�c�%���!8�9rc�`�|jj}|jj}|j}|jj d|j
�|d�||dd�|j�|d�||dd�|j�|dd�||dd�|j�|dd�||dd�|j�|dd�||dd�|j�|dd�||dd�|j�y)Nr rr
z5.5r5)r
�deleterrrr$r/�rr8rr0s r�test_no_deletezTextTest.test_no_deleteZs������!�!���i�i�m�m��� � ��� � �������(��x��
�c�%������*��u�
�
�c�%������*��x���
�c�%������*��x���
�c�%������*��u�e��
�c�%������*��u�e��
�c�%������*rc�$�|jj}|jj}|j}|jj d|j
�|d�||dd�d�|dd�||dd�d�|d�||dd�d�|jj dd�|d �||dd�d�|jj dd�|dd
�||dd�d�y)Nr r�ellor(�llo�lloworldr)rr-r�r
r8rrrr$r9s r�test_delete_charzTextTest.test_delete_charss������!�!���i�i�m�m��� � ��� � �������(��u�
�
�c�%��!�6�*��u�e��
�c�%��!�5�)� �w��
�c�%��!�:�.�� � �����%��v��
�c�%��!�:�.�� � �����%��u�e��
�c�%��!�:�.rc�R�|jj}|jj}|j}|jj d|j
�|dd�||dd�d�|dd�||dd�d�|jj d|j
�|dd�||dd�d�|dd�||dd�d�|jj d|j
�|dd �||dd�d
�y)Nr rr
z
world
rrzworld
z1.2r.zheld
r?r9s r�test_delete_slicezTextTest.test_delete_slice�s������!�!���i�i�m�m��� � ��� � �������(��u�m�$�
�c�%����-��u�e��
�c�%����&�� � �������(��u�e��
�c�%����+��u�e��
�c�%����&�� � �������(��u�e��
�c�%����*rc�\�|jjdd�|jjdd�|j|jjdd�d�|jj dd�|j|jjdd�d�y) Nr r,r)z 1
2
3
4
5r
zhel1
2
3
4
5lo
z5.1zhello
)r
rrrr8rs r�test_multiple_lineszTextTest.test_multiple_lines�s}��� � �����(�� � �����0���������u�e�4�6L�M�� � �����&���������u�e�4�i�@rc��|jj}|j}|jjdd�|j t
|ddd�dD]c\}}}}}}||d|d�||�||d|d�||�||d|d�||�||d|d�||�||d |d�||��ey)
Nr zFirst
Second
Third
z2.2�op))�<TTFFF)z<=TTTFF)�>FFFTT)z>=FFTTT)z==FFTFF)z!=TTFTTr(rr.z3.3)r
�comparerr�assertRaisesr) rrIr0rF�less1�less0�equal�greater0�greater1s r�test_comparezTextTest.test_compare�s����)�)�#�#��� � ��� � ���� 8�9����(�G�U�D�%�@�<�7�B��u�e�X�x�
�'�%��U�+�U�B�7��'�%��U�+�U�B�7��'�%��U�+�U�B�7��'�%��U�+�X�r�:��'�%��U�+�X�r�:�<rN)�__name__�
__module__�__qualname__�__doc__r$r/rr"r%r1r6r:r@rBrDrP�rrrr sF��0� �B�
�T�'�C�
3�0�0�+�&:�4+�2/�0+�.A�;rrc�(�eZdZed��Zd�Zd�Zy)�MockTextTestc��ddlm}||_y)Nr)�Text)�idlelib.idle_test.mock_tkrY)�clsrYs r�
setUpClasszMockTextTest.setUpClass�s��2���rc�.�|j�|_y�N)rYr
rs r�setUpzMockTextTest.setUp�s���I�I�K�� rc��|jj}|j}|jjd|j�||dd�d�||dd�d�||dd�d�||dd�d�y)Nr r
���)��z3.1r)rb�)r
�_decoderrr$)r�decoder0s r�test_decodezMockTextTest.test_decode�sx�����"�"��� � ��� � �������(�
�f�U�B���(�
�f�U�B���(�
�f�U�Q���(�
�f�U�A���'rN)rQrRrS�classmethodr\r_rgrUrrrWrW�s������ � (rrWc�2�eZdZed��Zed��Zd�Zy)�
TkTextTestc�P�td�ddlm}m}||_|�|_y)N�guir)�TkrY)r�tkinterrmrY�root)r[rmrYs rr\zTkTextTest.setUpClass�s�����$�����4��rc�<�|jj�|`yr^)ro�destroy)r[s r�
tearDownClasszTkTextTest.tearDownClass�s���������Hrc�D�|j|j�|_yr^)rYror
rs rr_zTkTextTest.setUp�s���I�I�d�i�i�(�� rN)rQrRrSrhr\rrr_rUrrrjrj�s-����������)rrj�__main__rbF)� verbosity�exit)rT�unittest�test.supportr�_tkinterrr�TestCaserWrjrQ�mainrUrr�<module>r|si����!��v;�v;�r(�8�X�.�.�(�.)��8�,�,�)�$�z���H�M�M�A�E�*�r
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists