Current File : //usr/local/apps/python3/lib/python3.11/test/__pycache__/test_rlcompleter.cpython-311.opt-1.pyc
�

�Ke&���ddlZddlmZddlZddlZGd�d��ZGd�dej��Zedkrej	��dSdS)�N)�patchc��eZdZdZdZdZdS)�
CompleteMez6 Trivial class used in testing rlcompleter.Completer. ��N)�__name__�
__module__�__qualname__�__doc__�spam�_ham���?/usr/local/apps/python3/lib/python3.11/test/test_rlcompleter.pyrrs������@�@��D��D�D�Drrc��eZdZd�Zd�Zd�Zd�Zd�Zd�Zd�Z	e
j�dd	��d
���Z
d�ZdS)
�TestRlcompleterc���tj��|_tjttt
t�����|_|j�dd��dS)N)r�eggr�r)	�rlcompleter�	Completer�stdcompleter�dict�int�strr�	completer�complete��selfs r�setUpzTestRlcompleter.setUp
sf��'�1�3�3���$�.�t��8;�?I�0K�0K�0K�L�L���
	
��"�"�2�q�)�)�)�)�)rc��Gd�dt��}Gd�dt��}|�|jj��|�|jj��|�tj|����j��|�	ttj|d����dS)Nc��eZdZdS)�)TestRlcompleter.test_namespace.<locals>.AN�rr	r
rrr�Ar#��������Drr%c��eZdZdS)�)TestRlcompleter.test_namespace.<locals>.BNr$rrr�Br(r&rr))r)r�list�
assertTruer�use_main_ns�assertFalserrr�assertRaises�	TypeError)rr%r)s   r�test_namespacezTestRlcompleter.test_namespaces���	�	�	�	�	��	�	�	�	�	�	�	�	��	�	�	�	
����)�5�6�6�6������3�4�4�4�����.�q�q�s�s�3�3�?�@�@�@����)�[�%:�A�A�d�G�G�D�D�D�D�Drc���|�t|j�d����d�t	t
��D����|�t|j�d����d�t	t
��D����|�|j�d��g��|�|j�d��dg��|�|j�d��d	g��|�|j�d��dg��dS)
N�dic�B�g|]}|�d���|dz��S)r2�(��
startswith��.0�xs  r�
<listcomp>z7TestRlcompleter.test_global_matches.<locals>.<listcomp>$�-��M�M�M�A�!�,�,�t�:L�:L�M�!�C�%�M�M�Mr�stc�B�g|]}|�d���|dz��S)r<r4r5r7s  rr:z7TestRlcompleter.test_global_matches.<locals>.<listcomp>&r;r�akaksajadhak�	CompleteMzCompleteMe()�egzegg()�assertEqual�sortedr�global_matches�dir�builtinsrrs r�test_global_matchesz#TestRlcompleter.test_global_matches!s`������� 1� @� @�� F� F�G�G�M�M��X���M�M�M�	O�	O�	O������ 1� @� @�� F� F�G�G�M�M��X���M�M�M�	O�	O�	O�����*�9�9�.�I�I�2�N�N�N�	
�����6�6�{�C�C�(�)�	+�	+�	+������6�6�t�<�<� ��	#�	#�	#�	
�����6�6�{�C�C�(�)�	+�	+�	+�	+�	+rc��|�|j�d��d�tt��D����|�|j�d��g��td�td��D����}|�|j�d��|��|�|j�d��|��|�|j�d��|��|�|j�d��d	g��|�|j�d
��g��|�|j�d��dd	g��|�|j�d
��dg��|j�d��}|D]+}|�|�d��|���,|�	d|��|�	d|��tjtdtd���5|�|j�d��dg��|�|j�d��d�tt��D����ddd��dS#1swxYwYdS)Nzstr.sc�b�g|],}|�d���d�|����-S)�szstr.{}(�r6�formatr7s  rr:z5TestRlcompleter.test_attr_matches.<locals>.<listcomp>5sF��0�0�0�!��\�\�#�.�.�0�)�*�*�1�-�-�0�0�0rztuple.foospameggc�,�h|]}d|�|dkrdnd����S)�None.rr4rrr7s  r�	<setcomp>z4TestRlcompleter.test_attr_matches.<locals>.<setcomp>8s@��/�/�/� �q�+,�!�A��N�N�S�S��-J�K�/�/�/rrMzNone._zNone.__z
CompleteMe.spzCompleteMe.spamzCompleteme.eggzCompleteMe.zCompleteMe.mro()zCompleteMe._zCompleteMe._hamz
CompleteMe.__zCompleteMe.__name__zCompleteMe.__new__(�meT)�createzCompleteMe.me.me.spzCompleteMe.me.me.spamzegg.sc�b�g|],}|�d���d�|����-S)rIzegg.{}(rJr7s  rr:z5TestRlcompleter.test_attr_matches.<locals>.<listcomp>PsF��4�4�4�a�!"���c�!2�!2�4�i�.�.�q�1�1�4�4�4r)
rAr�attr_matchesrDrrBrr+r6�assertInr�objectr)r�expected�matchesr9s    r�test_attr_matchesz!TestRlcompleter.test_attr_matches2sG������*�7�7��@�@�0�0�s�3�x�x�0�0�0�	1�	1�	1�	
����*�7�7�8J�K�K�R�P�P�P��/�/�$'��I�I�/�/�/�0�0������*�7�7��@�@�(�K�K�K�����*�7�7��A�A�8�L�L�L�����*�7�7�	�B�B�H�M�M�M�	
�����4�4�_�E�E�+�,�	.�	.�	.������4�4�5E�F�F��K�K�K������4�4�]�C�C�,�.?�@�	B�	B�	B������4�4�^�D�D�+�,�	.�	.�	.��.�-�-�o�>�>���	>�	>�A��O�O�A�L�L��9�9�1�=�=�=�=��
�
�+�W�5�5�5��
�
�+�W�5�5�5�
�\�*�d�J�t�
D�
D�
D�	5�	5����T�^�8�8�9N�O�O�5�6�
8�
8�
8����T�^�8�8��A�A�4�4�3�s�8�8�4�4�4�
5�
5�
5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5�	5����	5�	5�	5�	5�	5�	5s�;A:L�L�	Lc��Gd�d��}|��}tjt|�����}|�|�dd��d��|�|jd��dS)	z;Ensure getattr() is invoked no more than once per attributec�&��eZdZdZdZ�fd�Z�xZS)�3TestRlcompleter.test_excessive_getattr.<locals>.Foorrc�v��|dkr|xjdz
c_dSt���|��S)N�barr)�calls�super�__getattribute__)r�name�	__class__s  �rr_zDTestRlcompleter.test_excessive_getattr.<locals>.Foo.__getattribute__]s8����5�=�=��J�J�!�O�J�J��4��w�w�/�/��5�5�5r)rr	r
r]r\r_�
__classcell__)ras@r�FoorZZsB��������E��C�
6�
6�
6�
6�
6�
6�
6�
6�
6rrc��f�f.br�f.barrN)rrrrArr]�rrcrers    r�test_excessive_getattrz&TestRlcompleter.test_excessive_getattrSs���	6�	6�	6�	6�	6�	6�	6�	6�
�C�E�E���)�$��)�)�)�4�4�	�����+�+�E�1�5�5�w�?�?�?������!�$�$�$�$�$rc��Gd�d��}|��}tjt|�����}|�|�dd��d��|�|j��dS)Nc�,�eZdZdZdZed���ZdS)�<TestRlcompleter.test_property_method_not_called.<locals>.FoorFc��d|_|jS)NT)�property_called�_barrs rr\z@TestRlcompleter.test_property_method_not_called.<locals>.Foo.barms��'+��$��y� rN)rr	r
rorn�propertyr\rrrrcrlis7�������D�#�O�
�
!�
!��X�
!�
!�
!rrcrdrfrrg)rrrrArr-rnrhs    r�test_property_method_not_calledz/TestRlcompleter.test_property_method_not_calledhs���	!�	!�	!�	!�	!�	!�	!�	!�
�C�E�E���)�$��)�)�)�4�4�	�����+�+�E�1�5�5�w�?�?�?�����*�+�+�+�+�+rc���Gd�d��}tjt|�������}|�|�dd��d��dS)Nc��eZdZdZdS)�0TestRlcompleter.test_uncreated_attr.<locals>.Foo)r\N)rr	r
�	__slots__rrrrcrt{s������ �I�I�Irrcrdzf.rrg)rrrrAr)rrcrs   r�test_uncreated_attrz#TestRlcompleter.test_uncreated_attrxst��	!�	!�	!�	!�	!�	!�	!�	!��)�$�����-�-�-�8�8�	�����+�+�D�!�4�4�g�>�>�>�>�>rzrlcompleter._readline_availableFc�p�tj��}|�|�dd��d��|�|�dd��d��|�|�dd��d��|�|�dd	��d
��|�|�dd��d��|�|�dd��d
��|�|�dd��d��|�|�dd��d��|�|�dd��d��|�|�dd��d��|�|�dd��d��|�|�dd��d��|�|�dd��d��dS)Nrr�	�azand rzas �asr�assert �an�pa�pass�Fa�False�elzelif �else�tr�try:�_�matchzmatch �casezcase )rrrAr)rrs  r�
test_completezTestRlcompleter.test_complete�s���)�+�+�	�����+�+�B��2�2�D�9�9�9�����+�+�C��3�3�V�<�<�<�����+�+�C��3�3�U�;�;�;�����+�+�D�!�4�4�i�@�@�@�����+�+�D�!�4�4�f�=�=�=�����+�+�D�!�4�4�f�=�=�=�����+�+�D�!�4�4�g�>�>�>�����+�+�D�!�4�4�g�>�>�>�����+�+�D�!�4�4�f�=�=�=�����+�+�D�!�4�4�f�=�=�=�����+�+�C��3�3�S�9�9�9�����+�+�G�Q�7�7��B�B�B�����+�+�F�A�6�6��@�@�@�@�@rc��ddd�dd�d�}tj|��}|�|�dd��d��|�|�dd����|�|�dd��d��|�|�dd����|�|�d	d��d
��|�|�d	d����|�|�dd��d��|�|�dd����|�|�dd��d
��|�|�dd����dS)Nc��dS�Nrrrr�<lambda>z8TestRlcompleter.test_duplicate_globals.<locals>.<lambda>�s��4�rc��dSr�rrrrr�z8TestRlcompleter.test_duplicate_globals.<locals>.<lambda>�s���r)r��assert�try�
memoryview�Ellipsisr�rrr�r{r�r�r�r�z
Ellipsis())rrrAr�assertIsNone)r�	namespacers   r�test_duplicate_globalsz&TestRlcompleter.test_duplicate_globals�s������<��$��
�
�	� �)�)�4�4�	�����+�+�G�Q�7�7��A�A�A����)�,�,�W�a�8�8�9�9�9�����+�+�H�a�8�8�)�D�D�D����)�,�,�X�q�9�9�:�:�:�����+�+�E�1�5�5�v�>�>�>����)�,�,�U�A�6�6�7�7�7�����+�+�L�!�<�<�l�K�K�K����)�,�,�\�1�=�=�>�>�>�����+�+�J��:�:�L�I�I�I����)�,�,�Z��;�;�<�<�<�<�<rN)rr	r
r r0rFrWrirqrv�unittest�mockrr�r�rrrrrs�������*�*�*�	E�	E�	E�+�+�+�"5�5�5�B%�%�%�*
,�
,�
,� ?�?�?��]���:�E�B�B�A�A�C�B�A� =�=�=�=�=rr�__main__)
r��
unittest.mockrrErr�TestCaserr�mainrrr�<module>r�s���������������������
�
�
�
�
�
�
�
�Y=�Y=�Y=�Y=�Y=�h�'�Y=�Y=�Y=�v�z����H�M�O�O�O�O�O��r