HEX
Server: Microsoft-IIS/10.0
System: Windows NT ITPWINWEBSVR22 10.0 build 20348 (Windows Server 2022) AMD64
User: www.conferencesearch.co.uk (0)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: D:/Python311/Lib/idlelib/idle_test/__pycache__/test_config_key.cpython-311.pyc
�

��Vc'��\�dZddlmZddlmZddlZddlmZddlmZm	Z	ddl
mZddlm
Z
ejZGd	�d
ej��ZGd�dej��ZGd
�dej��ZGd�dej��ZGd�dej��Zedkrejd���dSdS)z�Test config_key, coverage 98%.

Coverage is effectively 100%.  Tkinter dialog is mocked, Mac-only line
may be skipped, and dummy function in bind test should not be called.
Not tested: exit with 'self.advanced or self.keys_ok(keys) ...' False.
�)�
config_key)�requiresN)�mock)�Tk�TclError)�Func)�	Mbox_funcc��eZdZdZGd�de��Zed���Zed���Zd�Z	d�Z
d�Zd	�Zd
�Z
d�Zd�Zd
�Zd�Zd�ZdS)�ValidationTestz.Test validation methods: ok, keys_ok, bind_ok.c�<�eZdZd�Ze��Ze��ZdS)�ValidationTest.Validatorc�b�tjj|g|�Ri|��Gd�d��}||_dS)Nc�"�eZdZe��ZdS)�:ValidationTest.Validator.__init__.<locals>.list_keys_finalN)�__name__�
__module__�__qualname__r�get���5D:\Python311\Lib\idlelib\idle_test\test_config_key.py�list_keys_finalrs�������d�f�f���rr)r�
GetKeysDialog�__init__r)�self�args�kwargsrs    rrz!ValidationTest.Validator.__init__s\���$�-�d�D�T�D�D�D�V�D�D�D�
�
�
�
�
�
�
�
�#2�D� � � rN)rrrrr�
get_modifiersr	�	showerrorrrr�	Validatorr
s5������	3�	3�	3�
����
��I�K�K�	�	�	rr c���td��t��|_|j���dgddgg}|�|jdd|d���|_dS)	N�gui�	<Key-F12>�<Control-Key-x>�<Control-Key-X>�Title�<<Test>>T��_utest)rr�root�withdrawr �dialog)�cls�keylists  r�
setUpClasszValidationTest.setUpClasssl��������4�4�����������=�#4�6G�"H�I���]�]��H�g�z�7�4�#�A�A��
�
�
rc��|j���|j���|j���|`|`dS�N�r,�cancelr*�update_idletasks�destroy�r-s r�
tearDownClasszValidationTest.tearDownClass(�K���
��������!�!�#�#�#���������J����rc�(�d|jj_dS)N�)r,r�message�rs r�setUpzValidationTest.setUp/s��(*����%�%�%rc��|jj�d��|j���|�|jjd��|�|jjjd��dS)N� r:zNo key specified.)r,�
key_string�set�ok�assertEqual�resultrr;r<s r�
test_ok_emptyzValidationTest.test_ok_empty4sm�����"�"�3�'�'�'�������������+�R�0�0�0������.�6�8K�L�L�L�L�Lrc�,�|jj�d��d|jjj_|j���|�|jjd��|�|jjj	d��dS)N�	<Key-F11>�F11r:)
r,r@rArrrDrBrCrr;r<s r�test_ok_goodzValidationTest.test_ok_good:s|�����"�"�;�/�/�/�16���#�'�.�������������+�[�9�9�9������.�6��;�;�;�;�;rc��|�|j�d����|�d|jjj��dS)Nz<Control-ShiftzMissing the final)�assertFalser,�keys_ok�assertInrr;r<s r�test_keys_no_endingz"ValidationTest.test_keys_no_endingAsJ�������,�,�-=�>�>�?�?�?��
�
�)�4�;�+@�+H�I�I�I�I�Irc���d|jjj_|�|j�d����|�d|jjj��dS)N�Az<Key-A>zNo modifier)	r,rrrDrKrLrMrr;r<s r�test_keys_no_modifier_badz(ValidationTest.test_keys_no_modifier_badEsX��14���#�'�.������,�,�Y�7�7�8�8�8��
�
�m�T�[�%:�%B�C�C�C�C�Crc���d|jjj_|�|j�d����|�|jjjd��dS)NrHrGr:)	r,rrrD�
assertTruerLrCrr;r<s r�test_keys_no_modifier_okz'ValidationTest.test_keys_no_modifier_okJsX��16���#�'�.������+�+�K�8�8�9�9�9������.�6��;�;�;�;�;rc��d|jjj_dg|jj_|�|j�d����|�d|jjj	��g|jj_dS)N�a�Shiftz<a>zshift modifier)
r,rrrDrrKrLrMrr;r<s r�test_keys_shift_badz"ValidationTest.test_keys_shift_badOsu��14���#�'�.�,3�9���!�(������,�,�U�3�3�4�4�4��
�
�&���(=�(E�F�F�F�+-���!�(�(�(rc��gddfdgddfdgddffD]�\}}}|�|||���5||jjj_||jj_|�|j�|����|�d	|jj	j
��ddd��n#1swxYwY��g|jj_dS)
N�F12r#�Control�xr$�Xr%)�m�f�szalready in use)�subTestr,rrrDrrKrLrMrr;)r�mods�final�seqs    r�
test_keys_dupzValidationTest.test_keys_dupVs5��"$�e�[�!9�#,�+�s�4E�!F�#,�+�s�4E�!F�!H�	O�	O��D�%���������5�5�
O�
O�9>���+�/�6�37���)�0�� � ���!4�!4�S�!9�!9�:�:�:��
�
�.���0E�0M�N�N�N�	
O�
O�
O�
O�
O�
O�
O�
O�
O�
O�
O����
O�
O�
O�
O��
,.���!�(�(�(s�A:B5�5B9	�<B9	c��|�|j�d����|�|jjjd��dS)Nz<Control-Shift-Key-a>r:)rSr,�bind_okrCrr;r<s r�test_bind_okzValidationTest.test_bind_okasI�������+�+�,C�D�D�E�E�E������.�6��;�;�;�;�;rc��|�|j�d����|�d|jjj��dS)Nz<Control-Shift>znot accepted)rKr,rgrMrr;r<s r�test_bind_not_okzValidationTest.test_bind_not_okesI�������,�,�->�?�?�@�@�@��
�
�n�d�k�&;�&C�D�D�D�D�DrN)rrr�__doc__�gkdr �classmethodr/r7r=rErIrNrQrTrXrerhrjrrrrrs!������4�4� � � � � �C� � � ��A�A��[�A��!�!��[�!�+�+�+�
M�M�M�<�<�<�J�J�J�D�D�D�
<�<�<�
.�.�.�	.�	.�	.�<�<�<�E�E�E�E�Errc�D�eZdZdZed���Zed���Zd�ZdS)�ToggleLevelTestz.Test toggle between Basic and Advanced frames.c��td��t��|_|j���t	|jddgd���|_dS�Nr"r&r'Tr(�rrr*r+rlr,r6s rr/zToggleLevelTest.setUpClassm�L��������4�4�������������7�J��4�H�H�H��
�
�
rc��|j���|j���|j���|`|`dSr1r2r6s rr7zToggleLevelTest.tearDownClasstr8rc���|j��fd�}|��j��|�d�jd��|��\}}|�||������|��j��|�d�jd��|��\}}|�||���j���|��j��|�d�jd��|��\}}|�||��dS)Nc���t�j�����D]\}}|jdkr|}|jdkr|}� ||fS)z�Get the stack order of the children of the frame.

            winfo_children() stores the children in stack order, so
            this can be used to check whether a frame is above or
            below another one.
            �keyseq_basic�keyseq_advanced)�	enumerate�frame�winfo_children�_name)�index�child�basic�advancedr,s    �r�
stackorderz5ToggleLevelTest.test_toggle_level.<locals>.stackorder~sb���!*�&�,�*E�*E�*G�*G� H� H�
%�
%���u��;�.�0�"�!�E��;�"3�3�%�$�H���(�?�"r�Advanced�text�Basic)	r,rKr�rM�button_level�
assertGreater�toggle_levelrS�invoke)rr�rr�r,s    @r�test_toggle_levelz!ToggleLevelTest.test_toggle_level{sY������	#�	#�	#�	#�	#�	
�����)�)�)��
�
�j�&�"5�f�"=�>�>�>�$�*�,�,���x����5�(�+�+�+�	�����������(�(�(��
�
�g�v�2�6�:�;�;�;�$�*�,�,���x����8�U�+�+�+�	��"�"�$�$�$������)�)�)��
�
�j�&�"5�f�"=�>�>�>�$�*�,�,���x����5�(�+�+�+�+�+rN)rrrrkrmr/r7r�rrrrorojs`������4�4��I�I��[�I��!�!��[�!�#,�#,�#,�#,�#,rroc��eZdZdZGd�de��Zed���Zed���Zd�Z	d�Z
ej�
ed��d	���Zej�
ed��d
���ZdS)�KeySelectionTestz#Test selecting key on Basic frames.c�8��eZdZ�fd�Zd�Ze��Z�xZS)�KeySelectionTest.Basicc�b��t��j|i|��Gd�d��}||_dS)Nc�J�eZdZe��Ze��Ze��ZdS)�8KeySelectionTest.Basic.__init__.<locals>.list_keys_finalN)rrrrr�select_clear�yviewrrrrr��s/�������d�f�f��#�t�v�v��������rr)�superrr)rrrr�	__class__s    �rrzKeySelectionTest.Basic.__init__�sW����E�G�G��d�-�f�-�-�-�
�
�
�
�
�
�
�
�$3�D� � � rc�*�gd�|_ddi|_dS)N)�foo�bar�BAZr��ZZZ)�	modifiers�modifier_labelr<s r�set_modifiers_for_platformz1KeySelectionTest.Basic.set_modifiers_for_platform�s!��2�2�2�D�N�#(�%�.�D���r)rrrrr�r	r�
__classcell__)r�s@rr�r��sH�������	3�	3�	3�	3�	3�	1�	1�	1��I�K�K�	�	�	�	�	rr�c���td��t��|_|j���|�|jddgd���|_dSrq)rrr*r+r�r,r6s rr/zKeySelectionTest.setUpClass�sO��������4�4�����������Y�Y�s�x��*�b��Y�N�N��
�
�
rc��|j���|j���|j���|`|`dSr1r2r6s rr7zKeySelectionTest.tearDownClass�r8rc�8�|j���dSr1)r,�
clear_key_seqr<s rr=zKeySelectionTest.setUp�s����!�!�#�#�#�#�#rc�j�|j}|j}|j}|jd���||��dg��|jd���||��ddg��|jd���||��dg��dS)Nr�r�)r,rrC�modifier_checkbuttonsr�)rr,�gm�eqs    r�test_get_modifiersz#KeySelectionTest.test_get_modifiers�s������
�
!��
�
��	�$�U�+�2�2�4�4�4�
��2�2�4�4�%������$�U�+�2�2�4�4�4�
��2�2�4�4�%��� � � ��$�U�+�2�2�4�4�4�
��2�2�4�4�%������rrc��|j}|j}|jj}|j}d|j_g|_|���||��d��dg|_|���||��d��d|j_ddg|_|���||��d��dS)NrVz<Key-a>�mymodz
<mymod-Key-a>r:�testz<mymod-test>)r,rr@rrCrD�return_value�build_key_string�r�mock_modifiersr,�key�stringr�s      r�test_build_key_stringz&KeySelectionTest.test_build_key_string�s�������$���"�&��
�
������&(��#����!�!�!�
��6�6�8�8�Y����'.�i��#����!�!�!�
��6�6�8�8�_�%�%�%�����'.��&7��#����!�!�!�
��6�6�8�8�^�$�$�$�$�$rc��|j}|j}|jj}|j}dg|_d|j_|���||��d��dS)NrW�{z<Shift-Key-braceleft>)r,rr@rrCr�rD�final_key_selectedr�s      r�test_final_key_selectedz(KeySelectionTest.test_final_key_selected�sh������$���"�&��
�
��'.�i��#������!�!�#�#�#�
��6�6�8�8�,�-�-�-�-�-rN)rrrrkrlr�rmr/r7r=r�r�patch�objectr�r�rrrr�r��s�������)�)� � � � � �� � � ��O�O��[�O��!�!��[�!�$�$�$�
�
�
�
�Z���s�O�,�,�%�%�-�,�%�(
�Z���s�O�,�,�	.�	.�-�,�	.�	.�	.rr�c�D�eZdZdZed���Zed���Zd�ZdS)�
CancelTestz'Simulate user clicking [Cancel] button.c��td��t��|_|j���t	|jddgd���|_dSrqrrr6s rr/zCancelTest.setUpClass�rsrc��|j���|j���|j���|`|`dSr1r2r6s rr7zCancelTest.tearDownClass�r8rc�r�|�|j���d��|jj���|�t��5|j���ddd��n#1swxYwY|�|jjd��dS)N�Toplevelr:)rCr,�winfo_class�
button_cancelr��assertRaisesrrDr<s r�test_cancelzCancelTest.test_cancels��������0�0�2�2�J�?�?�?���!�(�(�*�*�*�
�
�
�x�
(�
(�	&�	&��K�#�#�%�%�%�	&�	&�	&�	&�	&�	&�	&�	&�	&�	&�	&����	&�	&�	&�	&������+�R�0�0�0�0�0s�&B�B�BN)rrrrkrmr/r7r�rrrr�r��s`������-�-��I�I��[�I��!�!��[�!�1�1�1�1�1rr�c��eZdZdZd�ZdS)�
HelperTestz#Test module level helper functions.c�p�tj}|j}||dg��d��||dddg��d��||ddg��d��||dddg��d��||dgd���d��||dg��d	��||d
dg��d��dS)N�qzKey-qr[�AltrWzKey-Q)r[r�rWzPage Upz	Key-Prior�*zKey-asterisk)r�
translate_keyrC)r�trr�s   r�test_translate_keyzHelperTest.test_translate_keys��
�
%��
�
��	��2�2�c�2�;�;�� � � �
��2�2�c�I�u�%�&�&��0�0�0�	��2�2�c�G�9���w�'�'�'�
��2�2�c�I�w�'�(�(�'�2�2�2�
��2�2�c�.�.�.�/�/��9�9�9�	��2�2�i����k�*�*�*�
��2�2�c�G�9���~�.�.�.�.�.rN)rrrrkr�rrrr�r�s)������)�)�/�/�/�/�/rr��__main__�)�	verbosity)rk�idlelibr�test.supportr�unittestr�tkinterrr�idlelib.idle_test.mock_idler�idlelib.idle_test.mock_tkr	rrl�TestCaserror�r�r�r�mainrrr�<module>r�s�����������!�!�!�!�!�!����������� � � � � � � � �,�,�,�,�,�,�/�/�/�/�/�/����TE�TE�TE�TE�TE�X�&�TE�TE�TE�n4,�4,�4,�4,�4,�h�'�4,�4,�4,�nO.�O.�O.�O.�O.�x�(�O.�O.�O.�d1�1�1�1�1��"�1�1�1�2/�/�/�/�/��"�/�/�/�,�z����H�M�A��������r