Sindbad~EG File Manager
�
&ΜgU+����dZddlZddlmZmZddlmZddlmZm Z ddl
Z
ddlZddlm
ZddlmZddlmZddlmZGd�d �ZGd
�dej.�Zedk(rej4d
��yy)z Test autocomplete, coverage 93%.�N)�Mock�patch)�requires)�Tk�Text)�Func)�Eventc��eZdZd�Zy)�DummyEditwinc�J�||_||_d|_d|_d|_y)N�z>>>)�root�text�indentwidth�tabwidth�prompt_last_line)�selfrrs �@/usr/local/lib/python3.12/idlelib/idle_test/test_autocomplete.py�__init__zDummyEditwin.__init__s'���� ��� ������
� %���N)�__name__�
__module__�__qualname__r�rrrrs��&rrc��eZdZed��Zed��Zd�Zd�Zd�Zd�Z d�Z
d�Zd �Zd
�Z
d�Zd�Zd
�ZGd�d�Zd�Zd�Zd�Zd�Zy)�AutoCompleteTestc���td�t�|_|jj�t |j�|_t
|j|j
�|_y)N�gui)rrr�withdrawrrr�editor��clss r�
setUpClasszAutoCompleteTest.setUpClasssG������4�������������>���!�#�(�(�C�H�H�5��
rc�x�|`|`|jj�|jj �|`y�N)r rr�update_idletasks�destroyr!s r�
tearDownClasszAutoCompleteTest.tearDownClass#s0���J������!�!�#��������Hrc��|jjdd�tj|j�|_y)N�1.0�end)r�delete�ac�AutoCompleter �autocomplete�rs r�setUpzAutoCompleteTest.setUp*s+��� � �����&��O�O�D�K�K�8��rc���|j|jj|j�|j|jj|j�yr%)�assertEqualr/�editwinr rr0s r� test_initzAutoCompleteTest.test_init.sB������*�*�2�2�D�K�K�@�����*�*�/�/����;rc�x�|jj�}|j|tj�yr%)r/�_make_autocomplete_window�assertIsInstance�acw�AutoCompleteWindow)r�testwins r�test_make_autocomplete_windowz.AutoCompleteTest.test_make_autocomplete_window2s,���#�#�=�=�?�����g�s�'=�'=�>rc���|j}t�x|_}|j�|jj�|j
|j�yr%)r/r�autocompletewindow�_remove_autocomplete_window�hide_window�assert_called_once�assertIsNone)r�acp�ms r�test_remove_autocomplete_windowz0AutoCompleteTest.test_remove_autocomplete_window6sL������%)�V�+�����'�'�)� �
�
�(�(�*����#�0�0�1rc���|j}t�}||_|j|j d�d�|j|j
dtj�y)N�event�breakr)r/r�open_completionsr3�force_open_completions_event�argsr-�FORCE)rrC�open_cs r�!test_force_open_completions_eventz2AutoCompleteTest.test_force_open_completions_event=sS���������%�������9�9�'�B�G�L�������Q�����2rc�R�|j}|j}td��}|j|j |��|`|jjdd�|j|j |��|jjdd�|jjdd�t�x|_
}td��|_||j |�d�|jj�d|_
td �
�}||_||j |�d�||j dt"j$�d|_||j |�d�||j dt"j$�y)NT)�mc_stater*z """Docstring.
r+zre.)�return_valuerHF��resultr)r3r/r rB�autocomplete_eventrPr�insertr,rr>� is_active�completerArrIrKr-�TABrS)r�EqualrC�ev�mockrMs r�test_autocomplete_eventz(AutoCompleteTest.test_autocomplete_eventEsU��� � �������D�
!�����#�0�0��4�5��K�
� � ���� =�>����#�0�0��4�5�� � �����&�
� � �����&�(,��.�����4�0���
�c�$�$�R�(�'�2��
�
�(�(�*�!%����U�#��%���
�c�$�$�R�(�$�/�
�f�k�k�!�n�b�f�f�%���
�
�c�$�$�R�(�'�2�
�f�k�k�!�n�b�f�f�%rc��|j}|j}|j}|j}t d��}||j_|�||jd�|jdd�|�||jd�|jdd�d|_|�||j|jd��||j|j|jtjf�|j}||d�|jdd�d |_t �}||j_|�||j|jd��||j|f�||j|j|jtj$f�||jd �y)
N�after1rRrr*�rerUz re.z "./Lib/�after2)r3rr/�try_open_completions_eventr�after�calledrU�_delayed_completion_id�_delayed_completion_index�indexrK� popupwait�_delayed_open_completionsr-�TRY_ArS�after_cancel�TRY_F)rrYrrC�trycompletionsrb�cb1�cancels r�test_try_open_completions_eventz0AutoCompleteTest.test_try_open_completions_eventds|��� � ���y�y�������7�7���H�%������� ��
�e�l�l�A�����E�4� ���
�e�l�l�A��
���H�f�%�%)��"���
�c�+�+�T�Z�Z��-A�B�
�e�j�j��}�}�c�;�;�R�X�X�F� H��(�(��
�c�8��
���H�j�)������� &�������
�c�+�+�T�Z�Z��-A�B�
�f�k�k�C�6�"�
�e�j�j��}�}�c�;�;�R�X�X�F� H�
�c�(�(�(�3rc�B�|j}|j}t�}||_|jjdd�d|_|jjd�|_|jd�|j|j�||jd�|jjd�|_|jdd d
tjf�|j|jddd d
tjf�y)Nr*z"dict.rbz insert+1c�dummyrrU���)r3r/rrIrrUrdrfrerhrBrcr-�FILESrK)rrYrCrMs r�test_delayed_open_completionsz.AutoCompleteTest.test_delayed_open_completions�s���� � ���������%���� � �����)�&-��"�(,� � ����(D��%��%�%�g�.����#�4�4�5�
�f�m�m�Q��)-� � ����(A��%��%�%�q�!�Q����&9�:�������Q��!�Q��2�8�8�)<�=rc�"�|j}|j}d|_td��}||j_|jj
dd�||jtj��||j�y)NrbrR��?z # comment)
rBr/rdrrrjrUrIr-rX)r�nonerCrbs r�test_oc_cancel_commentz'AutoCompleteTest.test_oc_cancel_comment�sq��� � ������&-��"��G�$�� %������ � ����k�*��S�
!�
!�"�&�&�
)�*��S�
'�
'�(rc��|j}tggf��}||_|jj dd�|j|j
tj��|jj dd�|j|j
tj��|j|jd�y)NrRr*�objectrU�.rs)r/r�fetch_completionsrrUrBrIr-rXr3rc)rrC�fetchs r�test_oc_no_listz AutoCompleteTest.test_oc_no_list�s��������R��G�$�� %���� � �����)����#�.�.�r�v�v�6�7�� � ����3�'����#�.�.�r�v�v�6�7�������q�)rc��|j}|j}|jjdd�||j t
j��|jjdd�||j t
j��|jjdd�|j|j t
j��|jjdd�|j|j t
j��|jjdd�y)Nrxr}rUz int().r+r*�") rBr/rrUrIr-rXr,�assertFalse)rryrCs r�test_open_completions_nonez+AutoCompleteTest.test_open_completions_none�s���� � ������
� � ����c�"��S�
!�
!�"�&�&�
)�*�� � ����9�-��S�
!�
!�"�&�&�
)�*�
� � ����e�$�����-�-�b�f�f�5�6�� � �����$�����-�-�b�f�f�5�6�� � �����&rc�:�eZdZe�Zed��Ze�Zy)�AutoCompleteTest.dummy_acwFrRN)rrrrr�show_windowr@rrr� dummy_acwr��s���6���%�(���f�rr�c�,���j}tdgddgf��}||_�fd�}||_�jjdd�|j
tj��j|j�j��jjdd��jjdd��j|j
tj���jjdd�y) N�tem�_temrRc�$���j�Sr%)r�r0s�r�make_acwz8AutoCompleteTest.test_open_completions.<locals>.make_acw�s���t�~�~�/�/rr*zint.r+z"t)r/rr~r7rrUrIr-rXr8r>r�r,�
assertTrue)rrCrr�s` r�test_open_completionsz&AutoCompleteTest.test_open_completions�s���������e�W�e�V�_�5�6�� %���/�(0��%�� � �����'����R�V�V�$����c�4�4�d�n�n�E�� � �����&�
� � �����%�����,�,�R�V�V�4�5�� � �����&rc���|jdtj�|jdtj�|jdtj�y)N�and�case�None)�assertInr-�completion_kwds�assertNotInr0s r�test_completion_kwdsz%AutoCompleteTest.test_completion_kwds�s@���
�
�e�R�/�/�0��
�
�f�b�0�0�1������!3�!3�4rc
�
�|j}|jdtj�\}}t t
d�r3t
jtjk7r|jd|�|jdtj�\}}|jt|�t|��|jttd�|���|jttd�|���tjdddd gi�5|jdtj�\}}|j!|dd g�|j#d
|�|j#d|�|j#d|�|j%d
�}|j'||dzd
�ddd�t)�}t)�|_tjdd|i�5|jdtj�\}}|jd|�|j#d|�|j!|t-t/|��D�cgc]
}|dddk7s�|��c}�|j!|t-t/|���ddd�d�} tj0t2d| �5|jdtj4�\}}|j!|ddg�|j!|gd��|jdtj4�\}}|j!|ddg�|j!|gd��ddd�y#1swY���xYwcc}w#1swY��xYw#1swYyxYw)N��__file__r.c�$�|jd�S�N�_��
startswith��xs r�<lambda>z9AutoCompleteTest.test_fetch_completions.<locals>.<lambda>��
��Q�\�\�#�->rc�$�|jd�Sr�r�r�s rr�z9AutoCompleteTest.test_fetch_completions.<locals>.<lambda>�r�r�__main__.__dict__�__all__�a�br�sum�nonlocal�Falserr�foo�_privater�c��|dk(rgd�Sgd�S)Nr})r��bar�.hidden)�monty�pythonr�r)�paths r�_listdirz9AutoCompleteTest.test_fetch_completions.<locals>._listdir s���s�{�0�0�1�1r�listdirr�)r�r�r��~r�r�)r�r�r�)r/r~r-�ATTRS�hasattr�__main__r�r��
assertLess�lenr��all�filter�anyr�dictr3r�rf�assertNotEqualrr��sorted�dirr|�osru)
rrC�small�large�sr��posr[�ir�s
r�test_fetch_completionsz'AutoCompleteTest.test_fetch_completions�s��������,�,��B�H�H����u��8�Z�(�X�->�->�"�+�+�-M����^�U�3��$�$�R����2���1�����E�
�C��J�/�����F�#>��B�C�D�����F�#>��B�C�D��Z�Z�+�i�#�s��-D�
E��(�(��R�X�X�6�D�A�q����Q��c�
�+��M�M�*�a�(��M�M�%��#��M�M�*�a�(��'�'�'�"�C�����#�a�%��'�2�F��v�����
�
�Z�Z�+�e�T�]�
;��(�(�����9�D�A�q����Z��+��M�M�*�a�(����Q�F�3�t�9�,=� N�,=�q��2�A��#���,=� N�O����Q��s�4�y� 1�2�<� 2��\�\�"�i��
2��(�(��R�X�X�6�D�A�q����Q����/����Q� 9�:��(�(��b�h�h�7�D�A�q����Q��(� 3�4����Q� >�?�3�
2�5F�
E�� !O� <�
;��3�
2�s?�BM�.A*M-�
M(�&M(�*+M-�;BM9�M%�(M-�-M6�9Nc�j�|j}|j}||jd�t�t �}tjdd|i�5||jd�|�ddd�ddd�}tjdd|i�5||jd�|�ddd�tjdi�5|jt�5|jd �ddd�ddd�y#1swY��xYw#1swY�dxYw#1swY�*xYw#1swYyxYw)
N�intzsys.modules�tempfile�
�)r�r�r��d� not_exist) r/r3�
get_entityr�rrr��assertRaises� NameError)rrCrYr[�dis r�test_get_entityz AutoCompleteTest.test_get_entitys�������� � ��
�c�n�n�U�#�S�)��v��
�Z�Z�
�
�D�'9�
:��#�.�.��,�d�3�;���
#��
�Z�Z�+�c�2�Y�
7��#�.�.��%�r�*�8��Z�Z�+�R�
0��"�"�9�-����{�+�.�1�
0�;�
:��
8�
7��
.�-��1�
0�s<�D�D�D)�"D�4D)�D�D�D& �"D)�)D2N)rrr�classmethodr#r(r1r5r<rErNr\rorvrzr�r�r�r�r�r�r�rrrrrs����6��6�����9�<�?�2�3�&�>#4�J>�(
)�*�'�$��
'�$5�
4@�l,rrr�rs)� verbosity)�__doc__�unittest�
unittest.mockrr�test.supportr�tkinterrrr�r��idlelib.autocompleter/r-�idlelib.autocomplete_w�autocomplete_wr9�idlelib.idle_test.mock_idler�idlelib.idle_test.mock_tkr r�TestCaserr�mainrrr�<module>r�sb��"��%�!�� ��!�$�,�+�&�&�T,�x�(�(�T,�n�z���H�M�M�A��r
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists