Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.11/unittest/test/testmock/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.11/unittest/test/testmock/__pycache__/testhelpers.cpython-311.opt-1.pyc

�

TԚg݇��v�ddlZddlZddlZddlZddlmZmZmZmZm	Z	m
Z
mZmZm
Z
mZddlmZddlmZGd�de��ZGd�dej��ZGd	�d
ej��ZGd�dej��ZGd
�dej��ZGd�dej��Zedkrej��dSdS)�N)
�call�_Call�create_autospec�	MagicMock�Mock�ANY�	_CallList�patch�PropertyMock�	_callable)�datetime��partialc�"�eZdZd�Zd�Zdd�ZdS)�	SomeClassc��dS�N���self�a�bs   �?/usr/local/lib/python3.11/unittest/test/testmock/testhelpers.py�onez
SomeClass.one�����c��dSrr�rs r�twoz
SomeClass.tworrNc��dSrr�rrs  r�threezSomeClass.threerrr)�__name__�
__module__�__qualname__rrr"rrrrrs.������������!�!�!�!�!�!rrc�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�AnyTestc�8�|�tt����t��}|t��|�t��t��}|t���|�t���dS�N��foo)�assertEqualr�objectr�assert_called_with�r�mocks  r�test_anyzAnyTest.test_anys{������f�h�h�'�'�'��v�v����S�	�	�	�����$�$�$��v�v�����
�
�
�
����C��(�(�(�(�(rc��|�tt��d��|�tt��d��dS)Nz<ANY>)r,�reprr�strrs r�	test_reprzAnyTest.test_repr"s@������c���G�,�,�,�����S���7�+�+�+�+�+rc���t��}|tj��tj�����|�tt���dSr))rr
�nowr.rr/s  r�test_any_and_datetimezAnyTest.test_any_and_datetime'sK���v�v����X�\�^�^�����0�0�0�0�������-�-�-�-�-rc��t��}Gd�dt��}tj��|��fD�]}|���||||���|�|||���|���||���t
ttt���t
jttt���t
��t
���tt���g}|�||j	��|�|j	|����dS)Nc��eZdZd�Zd�ZdS)�9AnyTest.test_any_mock_calls_comparison_order.<locals>.Fooc��dSrr�r�others  r�__eq__z@AnyTest.test_any_mock_calls_comparison_order.<locals>.Foo.__eq__1rrc��dSrrr=s  r�__ne__z@AnyTest.test_any_mock_calls_comparison_order.<locals>.Foo.__ne__2rrN)r#r$r%r?rArrr�Foor;0s"������)�)�)�)�)�)�)�)rrB�r+�bar)�zinga�alpha)�a1�z99)
rr-r
r7�
reset_mock�methodrrr,�
mock_calls)rr0rB�d�expecteds     r�$test_any_mock_calls_comparison_orderz,AnyTest.test_any_mock_calls_comparison_order.s=���v�v��	*�	*�	*�	*�	*�&�	*�	*�	*���������&�
	8�
	8�A��O�O�����D���q�!�!�!�!��K�K���!�K�,�,�,��D�F�F�M�M�Q�A�M�&�&�&��S�c�s�+�+�+���C�s�#�6�6�6�������
�
��#�
�6�6��H�

���X�t��7�7�7����T�_�h�7�7�7�7�
	8�
	8rc�"�Gd�d��}t��}||��d��|�ttd��g��|�td��|�td��dS)Nc��eZdZd�ZdS)�%AnyTest.test_any_no_spec.<locals>.Fooc��dSrrr=s  rr?z,AnyTest.test_any_no_spec.<locals>.Foo.__eq__FrrN�r#r$r%r?rrrrBrQE�������)�)�)�)�)rrB��r�assert_has_callsrrr.�assert_any_call�rrBr0s   r�test_any_no_speczAnyTest.test_any_no_specCs���	*�	*�	*�	*�	*�	*�	*�	*��v�v����S�S�U�U�A�������t�C��|�|�n�-�-�-�����Q�'�'�'����S�!�$�$�$�$�$rc�&�Gd�d��}t|���}||��d��|�ttd��g��|�td��|�td��dS)Nc��eZdZd�ZdS)�*AnyTest.test_any_and_spec_set.<locals>.Fooc��dSrrr=s  rr?z1AnyTest.test_any_and_spec_set.<locals>.Foo.__eq__QrrNrSrrrrBr]PrTrrB)�specrUrVrYs   r�test_any_and_spec_setzAnyTest.test_any_and_spec_setNs���	*�	*�	*�	*�	*�	*�	*�	*���~�~�~����S�S�U�U�A�������t�C��|�|�n�-�-�-�����Q�'�'�'����S�!�$�$�$�$�$rN)	r#r$r%r1r5r8rNrZr`rrrr'r'sn������	)�	)�	)�,�,�,�
.�.�.�8�8�8�*	%�	%�	%�
%�
%�
%�
%�
%rr'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�ZdS)�CallTestc	���t��}|�|t����|�|td����|�|td����|�|tif����|�|td����|�|tdif����|�|tddif����|�|td����|�|td����|�|tdif����|�|td	dif����td
��}|�|td
����|�|td����|�|tdif����|�|tddif����td
��}|�|td����|�|tddif����td��}|�|td����|�|tddif����|�|td����|�|tddif����tddif��}|�|tddddif����|�|tdddif����|�|tdddif����|�|tddif����dS)N)��r)rdrrdrr*�rDr�baz�spam��rU��)rdrjrj)�rUrk�)r+rm)rdrmrm)rDrmrDrrl�rr,�assertNotEqual)r�kalls  r�test_call_with_callzCallTest.test_call_with_call\s����w�w������u�w�w�'�'�'�����u�U�|�|�,�,�,�����u�U�|�|�,�,�,�����u�b�U�|�|�,�,�,�����u�X���/�/�/�����u�b�"�X���/�/�/�����u�b�"�b�\�2�2�3�3�3�����u�X���/�/�/�����u�[�1�1�2�2�2�����u�e�R�[�1�1�2�2�2�����u�f�b�"�%5�6�6�7�7�7��\�"�"������u�\�2�2�3�3�3�����u�_�5�5�6�6�6�����u�i��_�5�5�6�6�6�����u�b�)�R�%8�9�9�:�:�:��\�"�"�����D�%��"8�"8�9�9�9����D�%��Y��(;�"<�"<�=�=�=��(�)�)�����D�%��"8�"8�9�9�9����D�%��Y��(;�"<�"<�=�=�=����D�%�(:�";�";�<�<�<����D�%��	�2�(>�"?�"?�@�@�@��s�A�h�[�!�!������u�b�"�s�A�h�%7�8�8�9�9�9�����u�b�3��(�^�4�4�5�5�5�����u�b�3��(�^�4�4�5�5�5�����u�s�A�h�[�1�1�2�2�2�2�2rc�b�t��}|�|d��|�|d��|�|d��|�|d��|�|ddif��|�|dif��|�|if��dS)Nrr*re�r+rr+)rr,�r�argss  r�test_empty__CallzCallTest.test_empty__Call�s����w�w������r�"�"�"�����x�(�(�(�����u�%�%�%�����{�+�+�+������b�"�~�.�.�.������r�{�+�+�+������u�%�%�%�%�%rc���tddif��}|�|d��|�|d��|�|ddif��|�|dif��|�|d��|�|d��|�|if��|�|d��|�|d��|�|dif��dS)	Nr+rr*rtre)rDrfrDrorus  r�test_named_empty_callzCallTest.test_named_empty_call�s���e�R��_�%�%������x�(�(�(�����{�+�+�+������b�"�~�.�.�.������r�{�+�+�+����D�%�(�(�(����D�"�%�%�%����D�2�%�(�(�(����D�(�+�+�+����D�+�.�.�.����D�5�"�+�.�.�.�.�.rc�N�tdif��}|�|d��|�|d��|�|ddif��|�|dif��|�|jd��|�|ji��dS)Nrjri�r+rjr+)rr,rv�kwargsrus  r�test_call_with_argszCallTest.test_call_with_args�s����i��_�%�%������|�,�,�,�����1�2�2�2������y�"�5�6�6�6�����	�2��/�/�/������I�.�.�.������b�)�)�)�)�)rc�P�tddif��}|�|d��|�|ddif��|�|jd��|�|ji��|�|d��|�|dif��dS)Nr+rjr{ri)rr,rvr|rprus  r�test_named_call_with_argsz"CallTest.test_named_call_with_args�s����e�Y��+�,�,������1�2�2�2������y�"�5�6�6�6������I�.�.�.������b�)�)�)����D�,�/�/�/����D�9�b�/�2�2�2�2�2rc	��tdtdd���f��}|�|tdd���f��|�|dtdd���f��|�|ddtdd���f��|�|dtdd���f��|�|jd��|�|jtdd�����dS)Nrrlrn�rrr+)r�dictr,rvr|rus  r�test_call_with_kwargszCallTest.test_call_with_kwargs�s����b�$��a�.�.�.�)�*�*�������q�A����0�1�1�1������t�a�1�~�~�~�6�7�7�7������r�4�!�q�>�>�>�:�;�;�;������D�1��N�N�N�3�4�4�4������B�'�'�'������d�Q�!�n�n�n�5�5�5�5�5rc	�
�tddtdd���f��}|�|dtdd���f��|�|ddtdd���f��|�|jd��|�|jtdd�����|�|tdd���f��|�|dtdd���f��dS)Nr+rrlrnr�)rr�r,rvr|rprus  r�test_named_call_with_kwargsz$CallTest.test_named_call_with_kwargs�s����e�R���Q����0�1�1�������t�a�1�~�~�~�6�7�7�7������r�4�!�q�>�>�>�:�;�;�;������B�'�'�'������d�Q�!�n�n�n�5�5�5����D�4�!�q�>�>�>�"3�4�4�4����D�2�t�a�1�~�~�~�"6�7�7�7�7�7rc��tdif��}|�|tddd����|�tddd��|��|�tddd��|g��dS)NrjrUrkrl)rr,r�assertInrus  r�#test_call_with_args_call_empty_namez,CallTest.test_call_with_args_call_empty_name�sy���i��_�%�%������t�A�q�!�}�}�-�-�-�����a��A����-�-�-��
�
�d�1�a��m�m�d�V�,�,�,�,�,rc�@�|�td��tdd����|�td��tddd��k��|�tdif��tddd��k��dS)NrirUrkrl�rUrk)rprr�assertFalse�
assertTruers r�test_call_nezCallTest.test_call_ne�s������E�,�/�/��a����<�<�<�����|�,�,��Q��1�
�
�=�>�>�>�����v�r�l�+�+�t�A�q�!�}�}�<�=�=�=�=�=rc��td��}dd|tfD]1}|�||��|�||k���2dS)NrirU)r�intrpr�)rrq�values   r�test_call_non_tupleszCallTest.test_call_non_tuples�sb���\�"�"����d�C�'�	,�	,�E�����e�,�,�,����T�U�]�+�+�+�+�	,�	,rc
��|�tt����d��|�ttd����d��|�ttdddif����d��|�ttddddif����d	��|�tt��d
��|�t	t��d
��|�tt����d��|�ttd����d��|�ttd
�����d��|�tt��j��d��|�ttd��j�d���j��d��|�tt���ddd�����d��|�tt������d��|�ttd��d����d��|�tt�������j�	d����d��dS)Nzcall()r*z
call.foo()rjrrzcall(1, 2, 3, a='b')rDzcall.bar(1, 2, 3, a='b')rrUzcall(1)�thing)�zzzcall(zz='thing')z
call().foorl�rzcall().foo.bar().bingrkzcall().foo(1, 2, a=3)zcall()()z	call()(2)zcall()().bar().baz.beep(1))
r,r3rrr4r+rD�bingrg�beeprs rr5zCallTest.test_repr�s�������e�g�g����1�1�1�����e�H�o�o�.�.��=�=�=�����e�Y��c�
�$;�<�<�=�=�/�	1�	1�	1�����e�U�I��S�z�$B�C�C�D�D�3�	5�	5�	5�	
����d���V�,�,�,�����T���F�+�+�+�����d�f�f���x�0�0�0�����d�1�g�g���	�2�2�2�����d�g�.�.�.�/�/�1C�D�D�D�����d�f�f�j�)�)�<�8�8�8�����d�1�g�g�k�o�o��o�2�2�7�8�8�0�	2�	2�	2����������A�q�A��&�&�'�'�#�	
�	
�	
�	
����f�d�f�f�h�h����4�4�4�����g�d�1�g�g�a�j�j�)�)�;�7�7�7���������������#�(�(��+�+�,�,�(�	
�	
�	
�	
�	
rc�p�|�t��ddif��|�tdddd���ddddd�f��t��}|d	d
d��|dd���|�|jtd	d
d��tdd���g��dS)
Nrdrr+rDrlrn)rrrCrUrk�r�)r,rr�call_args_listr/s  r�	test_callzCallTest.test_call�s���������"�b�"��.�.�.�����e�U��q�9�9�9��n�a��.B�.B�C�	E�	E�	E��v�v����Q��1�
�
�
���q�A���������,��q�!�Q�-�-���Q����8�	:�	:�	:�	:�	:rc���|�tjd��ddif��|�tj�d���ddddif��t��}|�dd	d
��|j�d
d���|�|jtjdd	d
��tj�d
d���g��dS)
NrUr+)rU�eggs)�fishzbar.bazrr�rkrlr�r�)r,rr+rDrgr�method_callsr/s  r�test_attribute_callzCallTest.test_attribute_call
s��������!���u�d�B�&7�8�8�8��������6��2�2�#�R�&�&�)9�:�	<�	<�	<��v�v������A�q��������q�A���������*��(�1�a��+�+�T�X�\�\�A��\�-C�-C�D�	F�	F�	F�	F�	Frc	�2�td���d���dd���}|�|ddt	d���f��t��}|dddd���|�|jtdddd�����|�|jtddd����|�|jtdddd���g��|�|j	tdddd���g��t��}|�d�������j
�d	���tjd�������j
�d	���}|�|j	d
|��|�|j	|�����dS)NrUrkrlrnr�z().foo().bar�rlr�r����)
rr+rDr,r�r�	call_argsrpr�rKrgr��	call_list)r�resultr0�	last_calls    r�test_extended_callzCallTest.test_extended_calls����a�����Q���#�#�A��#�+�+������.�$��q�	�	�	�!B�C�C�C��{�{����Q��Q�!�����������a��a�1�)=�)=�)=�>�>�>����D�N�D��A�q�M�M�:�:�:�����,�t�A�q�A��/C�/C�/C�.D�E�E�E������4��1��Q�+?�+?�+?�*@�A�A�A��{�{����������������$�$�q�$�)�)�)�%�D�H�Q�K�K�O�O�%�%�'�'�+�0�0�1�0�5�5�	�������,�i�8�8�8������)�*=�*=�*?�*?�@�@�@�@�@rc���td���j}td���j}|�||��|�||��|�||��dS�NrU��xrk)rr+r,rprs   r�test_extended_not_equalz CallTest.test_extended_not_equal*sh���1�I�I�I�M���1�I�I�I�M������A��������A�������A�q�!�!�!�!�!rc�&�td������j}td������j}|�||��|�||��|�||��dSr�)rr+rDr,rprs   r�test_nested_calls_not_equalz$CallTest.test_nested_calls_not_equal2sz���1�I�I�I�M�M�O�O����1�I�I�I�M�M�O�O�������A��������A�������A�q�!�!�!�!�!rc��t��}|d��|�td�����|j��t��}|d���d��|�td���d�����|j��t��}|d���d��d��|�td���d��d�����|j��t��}t
|d���d��d��jj�	d��d����td���d��d��jj�	d��d���
��}|�|���|j��dS)NrUrkrlrn�)rr,rr�rKrJr�r+rDrg�__int__)rr0rqs   r�test_call_listzCallTest.test_call_list:s����{�{����Q��������a���*�*�,�,�d�o�>�>�>��{�{����Q�����q��������a������*�*�4�4�6�6���	*�	*�	*��{�{�����Q�����q���!�������*��a������*�*�1�-�-�7�7�9�9���	*�	*�	*��{�{���/��D�D��G�G�N�N�1���a� � �$�(�,�,�Q�/�/��2�2�3�3�3�2� �t�A�w�w�~�~�a� � ��#�#�'�+�/�/��2�2�1�5�5�=�=�?�?��������)�)�4�?�;�;�;�;�;rc��|�tt��t��}t	|��|�|jtg��|�tg|j��dSr)r,rrrr�rK�r�ms  r�
test_call_anyzCallTest.test_call_anyOsf������s�#�#�#��K�K���A����������u�-�-�-����#����-�-�-�-�-rc�<�tdddifd���}|�t|��d��|�|dd��|�|dddi��tdddif��}|�||��dS)	Nr�rrlT)rrkrrU)rr,�len)rrv�
other_argss   r�test_two_args_callzCallTest.test_two_args_callXs����f�s�A�h�'�T�2�2�2������T���A�&�&�&�����a��&�)�)�)�����a��3��(�+�+�+��F�S�!�H�-�.�.�
�����z�*�*�*�*�*rc��|�tdd��dd��|�td��dd��|�tdddif��dd��dS)	Nrr+r)�rD�barzrdr��hello�world)r,rrs r�test_call_with_namezCallTest.test_call_with_nameas~������r�5�)�)�!�,�e�4�4�4�����1�3�3�A�6��;�;�;������'�7�1C�D�F�F�q�I�2�N�N�N�N�Nrc	��t��}|�����d��|�|jt	��t	�����t	������d��t	����������g��t��}d|�����d<|�|jt	��t	�����t	������dd��g��t��}t|�������|�|jt	��t	�����t	��������g��dS)NrDrU)	rr+r,rKr�__getitem__�__setitem__�iter�__iter__r�s  r�test_dunder_callzCallTest.test_dunder_callfs����K�K���������	�	�%��������
�L�
�V�V�T�V�V�Z�Z�\�\�4�6�6�:�:�<�<�#;�#;�E�#B�#B�D^�D�F�F�J�J�L�L�D\�D\�D^�D^�D`�D`�a�	
�	
�	
�
�K�K���������	�	�%�����
�L�
�V�V�T�V�V�Z�Z�\�\�4�6�6�:�:�<�<�#;�#;�E�1�#E�#E�F�	
�	
�	
�
�K�K���Q�Q�S�S�W�W�Y�Y�������
�L�
�V�V�T�V�V�Z�Z�\�\�4�6�6�:�:�<�<�#8�#8�#:�#:�;�	
�	
�	
�	
�	
rN)r#r$r%rrrwryr}rr�r�r�r�r�r5r�r�r�r�r�r�r�r�r�r�rrrrbrbZsY������"3�"3�"3�J	&�	&�	&�
/�
/�
/� *�*�*�	3�	3�	3�6�6�6�	8�	8�	8�-�-�-�>�>�>�,�,�,�
�
�
�>	:�	:�	:�	F�	F�	F�A�A�A�("�"�"�"�"�"�<�<�<�*.�.�.�+�+�+�O�O�O�

�
�
�
�
rrbc��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"d!�Z#d"�Z$d#�Z%d$�Z&d%�Z'd&�Z(d'�Z)d(�Z*d)S)*�SpecSignatureTestc���|�tt|d��|�dd��|j�dd��|�t
|jjdd��|�t|jd��|���|j���|�t
|jjd��|�t|jd��|���|j���|�t
|jjd��|�t|jdd��|�d��|j�d��|�d���|j�d���dS)Nr+rUrkrlrnr�)	�assertRaises�AttributeError�getattrrr.�AssertionError�	TypeErrorrr"r/s  r�_check_someclass_mockz'SpecSignatureTest._check_someclass_mock}s������.�'�4��?�?�?�����A������#�#�A�q�)�)�)����.��(�5�q�!�	=�	=�	=����)�T�X�q�1�1�1����
�
�
���#�#�%�%�%����.��(�5�q�	:�	:�	:����)�T�X�q�1�1�1��
�
�����
�%�%�'�'�'����.��*�7��	<�	<�	<����)�T�Z��A�6�6�6��
�
�1�
�
�
��
�%�%�a�(�(�(��
�
�Q�
�����
�%�%��%�*�*�*�*�*rc��tt��}|�|��tt����}|�|��dSr)rrr�r/s  r�
test_basiczSpecSignatureTest.test_basic�sN���y�)�)���"�"�4�(�(�(��y�{�{�+�+���"�"�4�(�(�(�(�(rc���d�}t|d���}|�|��d��Gd�dt��}t|d���}|�|��d��dS)Nc��dSrrrrr�fz>SpecSignatureTest.test_create_autospec_return_value.<locals>.f�rrr+��return_valuec��eZdZdS)�@SpecSignatureTest.test_create_autospec_return_value.<locals>.FooN�r#r$r%rrrrBr����������DrrB)rr,r-)rr�r0rBs    r�!test_create_autospec_return_valuez3SpecSignatureTest.test_create_autospec_return_value�s����
�
��q�u�5�5�5����������'�'�'�	�	�	�	�	�&�	�	�	��s��7�7�7����������'�'�'�'�'rc��tt��}t|��|���|�|jjd��dS)Nr)rr�rIr,r��
call_countr�s  r�test_autospec_reset_mockz*SpecSignatureTest.test_autospec_reset_mock�sH���C� � ���A����	�����������-�q�1�1�1�1�1rc���Gd�dt��}tj|d��}|���}|���d��|�d��dS)Nc��eZdZd�ZdS)�;SpecSignatureTest.test_mocking_unbound_methods.<locals>.Fooc��dSrr)rr+s  rr+z?SpecSignatureTest.test_mocking_unbound_methods.<locals>.Foo.foo�rrN�r#r$r%r+rrrrBr���������$�$�$�$�$rrBr+rU)r-r
�startr+r.)rrB�p�mock_foos    r�test_mocking_unbound_methodsz.SpecSignatureTest.test_mocking_unbound_methods�sy��	%�	%�	%�	%�	%�&�	%�	%�	%��L��e�$�$���7�7�9�9������	�	�!�����#�#�A�&�&�&�&�&rc��Gd�dt��}t|d���}|�|jd��dS)Nc��eZdZdZdS)�ESpecSignatureTest.test_create_autospec_keyword_arguments.<locals>.FoorlN�r#r$r%rrrrrBr����������A�A�ArrB�3r�)r-rr,r)rrBr�s   r�&test_create_autospec_keyword_argumentsz8SpecSignatureTest.test_create_autospec_keyword_arguments�s\��	�	�	�	�	�&�	�	�	��C�3�'�'�'�������c�"�"�"�"�"rc���dd�d�}t|��}|d��|�d��|�t|dd��|dd���|�dd���dS)N�rc��dSrrr�s  rr+zJSpecSignatureTest.test_create_autospec_keyword_only_arguments.<locals>.foo�rrrUrkrl)rr.r�r�)rr+r�s   r�+test_create_autospec_keyword_only_argumentsz=SpecSignatureTest.test_create_autospec_keyword_only_arguments�s����#�#�#�#�#��C� � ��	��!����	���Q�������)�Q��1�-�-�-�	��!�q�	�	�	�	�	���Q�!��$�$�$�$�$rc��t��}d�}||_t|��}|�d��|j�d��dS)Nc��dSrrr�s rr�z@SpecSignatureTest.test_function_as_instance_attribute.<locals>.f�rrr�)rr�rr.)r�objr�r0s    r�#test_function_as_instance_attributez5SpecSignatureTest.test_function_as_instance_attribute�sQ���k�k���������s�#�#�����v������!�!�&�)�)�)�)�)rc���tg��}|�d��|j�d��|�tt
|d��Gd�dt��}t|��}|j�d��|jj�d��|�tt
|jd��dS)Nr+c��eZdZgZdS)�0SpecSignatureTest.test_spec_as_list.<locals>.FooNr�rrrrBr��s�������C�C�CrrBrl)r�appendr.r�r�r�r-r+)rr0rBs   r�test_spec_as_listz#SpecSignatureTest.test_spec_as_list�s����r�"�"�����E������&�&�u�-�-�-����.�'�4��?�?�?�	�	�	�	�	�&�	�	�	��s�#�#�������������*�*�1�-�-�-����.�'�4�8�U�C�C�C�C�Crc��Gd�dt��}t|��}||jfD]}|�|���dS)Nc�"�eZdZe��ZdS)�.SpecSignatureTest.test_attributes.<locals>.SubN�r#r$r%r�attrrrr�Subr���������9�;�;�D�D�Drr)rrrr�)rr�sub_mockr0s    r�test_attributesz!SpecSignatureTest.test_attributes�sr��	�	�	�	�	�)�	�	�	�#�3�'�'���x�}�-�	-�	-�D��&�&�t�,�,�,�,�	-�	-rc���Gd�dt���G�fd�dt��}t|��}|�d��|�t��5|���ddd��n#1swxYwY|�t��5|�dd��ddd��dS#1swxYwYdS)Nc��eZdZd�ZdS)�VSpecSignatureTest.test_spec_has_descriptor_returning_function.<locals>.CrazyDescriptorc��|�d�SdS)Nc��dSrrr�s r�<lambda>zpSpecSignatureTest.test_spec_has_descriptor_returning_function.<locals>.CrazyDescriptor.__get__.<locals>.<lambda>�s��T�rr)rr��type_s   r�__get__z^SpecSignatureTest.test_spec_has_descriptor_returning_function.<locals>.CrazyDescriptor.__get__�s���;�)�>�)��;rN�r#r$r%rrrr�CrazyDescriptorr	�s#������
*�
*�
*�
*�
*rrc�$��eZdZ���ZdS)�NSpecSignatureTest.test_spec_has_descriptor_returning_function.<locals>.MyClassN)r#r$r%�	some_attr)rs�r�MyClassr�s�������'��)�)�I�I�IrrrUrk)r-rrr�r�)rrr0rs   @r�+test_spec_has_descriptor_returning_functionz=SpecSignatureTest.test_spec_has_descriptor_returning_function�s����	*�	*�	*�	*�	*�f�	*�	*�	*�	*�	*�	*�	*�	*�	*�	*�f�	*�	*�	*��w�'�'�����q����
�
�
�y�
)�
)�	�	��N�N����	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�
�
�y�
)�
)�	!�	!��N�N�1�a� � � �	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!�	!����	!�	!�	!�	!�	!�	!s$�(B	�	B
�B
�.C�C�Cc�p��G�fd�dt������}|�t��5|jddd��n#1swxYwY|�|�d��d��t
|��}|�d��|�t��5|���ddd��n#1swxYwY|�t��5|�dd��ddd��dS#1swxYwYdS)Nc�(���eZdZ��fd�Zd�Z�xZS)�ISpecSignatureTest.test_spec_has_function_not_in_bases.<locals>.CrazyClassc�P��t�|�����dgzS)N�crazy)�super�__dir__)r�
CrazyClass�	__class__s ��rrzQSpecSignatureTest.test_spec_has_function_not_in_bases.<locals>.CrazyClass.__dir__
s&����Z��.�.�6�6�8�8�'��B�Brc�2�|dkrd�St|���)Nrc��|Srrr�s rrzgSpecSignatureTest.test_spec_has_function_not_in_bases.<locals>.CrazyClass.__getattr__.<locals>.<lambda>s��Q�r�r�)r�items  r�__getattr__zUSpecSignatureTest.test_spec_has_function_not_in_bases.<locals>.CrazyClass.__getattr__s!���7�?�?�&�;�&�$�T�*�*�*r)r#r$r%rr#�
__classcell__)rrs@�rrrsS��������
C�
C�
C�
C�
C�
C�
+�
+�
+�
+�
+�
+�
+rr�*rUrk)r-r�r�r>r,rrr�)r�instr0rs   @r�#test_spec_has_function_not_in_basesz5SpecSignatureTest.test_spec_has_function_not_in_bases	s����	+�	+�	+�	+�	+�	+�	+��	+�	+�	+��z�|�|��
�
�
�~�
.�
.�	�	��J�J�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�������B����,�,�,��t�$�$���
�
�2����
�
�
�y�
)�
)�	�	��J�J�L�L�L�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�
�
�
�y�
)�
)�	�	��J�J�q�!����	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s5�A�A�A�C"�"C&�)C&�D+�+D/�2D/c�Z�Gd�dt��}t|��}|�d��|j�d��|�t
t|jd��|�d��|j�d��|�t|jdd��|�t
t|jd��|�	ddg��|j	�ddg��|�t
t|j	d��|j
�d��|j
j�d��|�t
t|j
d��dS)Nc��eZdZd�ZeZiZdS)�GSpecSignatureTest.test_builtin_functions_types.<locals>.BuiltinSubclassc��dSrr)r�args  rrDzKSpecSignatureTest.test_builtin_functions_types.<locals>.BuiltinSubclass.bar'rrN)r#r$r%rD�sortedrrrr�BuiltinSubclassr*&s!������$�$�$��F��D�D�Drr.rlr+rDrUrk)�listrr�r.r�r�r�rDr�r-r�pop�rr.r0s   r�test_builtin_functions_typesz.SpecSignatureTest.test_builtin_functions_types"ss��	�	�	�	�	�d�	�	�	�
��/�/�����A������&�&�q�)�)�)����.�'�4�;��F�F�F����������#�#�E�*�*�*����)�T�X�u�e�<�<�<����.�'�4�8�U�C�C�C����Q��F������&�&��1�v�.�.�.����.�'�4�;��F�F�F��	�
�
�a�����	�
�(�(��+�+�+����.�'�4�9�e�D�D�D�D�Drc�$�Gd�dt��}t|��}|�dd��|���|�d��tjdd��tj��tjd��g}|�|j|��|j�dd��|j���|j�d��|�	t
j�dd��t
j���t
j�d��g��|�|j|��dS)Nc�"�eZdZe��ZdS)�0SpecSignatureTest.test_method_calls.<locals>.SubNrrrrrr5?rrrrUrkrl)
rrrrr"rr,r�r�extend)rrr0rMs    r�test_method_callsz#SpecSignatureTest.test_method_calls>sG��	�	�	�	�	�)�	�	�	��s�#�#������A�������
�
�
��
�
�1�
�
�
��H�Q��N�N�D�H�J�J��
�1�
�
�>������*�H�5�5�5��	�
�
�a������	�
�
�����	����������
�Y�]�]�1�a�
 �
 �$�)�-�-�/�/�4�9�?�?�1�3E�3E�F�	
�	
�	
�	
����*�H�5�5�5�5�5rc���Gd�dt��}t|��}|�t|��g��|�tt
|��|�tt
|j��|�t|��g��|�|dt��|�|jdt��dS)Nc��eZdZiZdS)�=SpecSignatureTest.test_magic_methods.<locals>.BuiltinSubclassN)r#r$r%rrrrr.r:Us�������D�D�Drr.r+)	r/rr,r�r�r�r�assertIsInstancerr1s   r�test_magic_methodsz$SpecSignatureTest.test_magic_methodsTs���	�	�	�	�	�d�	�	�	���/�/������d���R�(�(�(����)�S�$�/�/�/����)�S�$�)�4�4�4�����d���R�(�(�(����d�5�k�9�5�5�5����d�i��.�	�:�:�:�:�:rc�,�Gd�dt��}||��fD]s}t|d���}|�|��|�tt
|dd��|�tt
|jdd���tdS)Nc�"�eZdZe��ZdS)�,SpecSignatureTest.test_spec_set.<locals>.SubNrrrrrr?crrrT)�spec_setr+rD)rrr�r�r��setattrr)rrr_r0s    r�
test_spec_setzSpecSignatureTest.test_spec_setbs���	�	�	�	�	�)�	�	�	��#�#�%�%�L�	P�	P�D�"�4�$�7�7�7�D��&�&�t�,�,�,����n�g�t�U�E�J�J�J����n�g�t�y�%��O�O�O�O�	P�	Prc��Gd�dt��}Gd�d|��}Gd�dt|��}||��||��||��fD]s}t|��}|�dd��|j�dd��|�d	d
��|j�d	d
���tdS)Nc�:�eZdZed���Zed���ZdS)�/SpecSignatureTest.test_descriptors.<locals>.Fooc��dSrr)�clsrrs   rr�z1SpecSignatureTest.test_descriptors.<locals>.Foo.fp���"�drc��dSrrr�s  r�gz1SpecSignatureTest.test_descriptors.<locals>.Foo.grs���rN)r#r$r%�classmethodr��staticmethodrJrrrrBrEos6������
�"�"��[�"�
����\���rrBc��eZdZdS)�/SpecSignatureTest.test_descriptors.<locals>.BarNr�rrr�BarrNu��������rrOc��eZdZdS)�/SpecSignatureTest.test_descriptors.<locals>.BazNr�rrr�BazrRwrPrrSrUrkrlrn)r-rrr��assert_called_once_withrJ)rrBrOrSr_r0s      r�test_descriptorsz"SpecSignatureTest.test_descriptorsns���	�	�	�	�	�&�	�	�	�	�����#����'�'�'�'�'�)�S�'�'�'��#�#�%�%��c�c�e�e�S�#�#�%�%�8�	1�	1�D�"�4�(�(�D��F�F�1�a�L�L�L��F�*�*�1�a�0�0�0��F�F�1�a�L�L�L��F�*�*�1�a�0�0�0�0�
	1�	1rc��Gd�dt��}||_t|��}|��|�|jj��|���|j���|�|jtj��tj���g��|�	|j
|j��|�|j
|j��|j
�
��|�t|jj
j��dS)Nc��eZdZd�ZdZeZdS)�+SpecSignatureTest.test_recursive.<locals>.Ac��dSrrrs rrz-SpecSignatureTest.test_recursive.<locals>.A.a�rrzfoo bar bazN)r#r$r%rr+rDrrr�ArX�s!����������C��C�C�CrrZ)r-�Brr��calledrr,r�r�assertIsr+rD�assertIsNot�lowerr�r�r.)rrZr0s   r�test_recursivez SpecSignatureTest.test_recursive�s��	�	�	�	�	��	�	�	�
����q�!�!�������������'�'�'�����������
�
�
�����*�T�V�X�X�t�v�x�x�z�z�,B�C�C�C��
�
�a�e�Q�U�#�#�#������4�8�,�,�,�����������.�$�(�.�*K�L�L�L�L�Lrc��Gd�dt��}t|��}|�||����||��fD]�}|�d���|j�d���|j�d��|�t|jdd��|�tt|d����t|����}|�d��|j�d��|j�d���|�t|jdd��|�tt|d��|�t|��|j	�
d��|j	j
�d��|j	j
�d�	��|�tt|j	d
��|�	���
d��|�	��j
�d��|�	��j
�d�	��|�tt|�	��d
��dS)Nc�0�eZdZd�ZGd�de��ZdS)�@SpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Fooc��dSrr)rr�s  rrzBSpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Foo.a�rrc��eZdZd�ZdS)�DSpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Foo.Barc��dSrr)r�ys  rr�zFSpecSignatureTest.test_spec_inheritance_for_classes.<locals>.Foo.Bar.f�rrN�r#r$r%r�rrrrOrf�s������$�$�$�$�$rrON)r#r$r%rr-rOrrrrBrc�sG������ � � �
%�
%�
%�
%�
%�f�
%�
%�
%�
%�
%rrBr�r�r+rDrr�)rhrJ)r-rr^rr.r�r�r�r�rOr�)rrB�
class_mock�	this_mock�
instance_mocks     r�!test_spec_inheritance_for_classesz3SpecSignatureTest.test_spec_inheritance_for_classes�s���	%�	%�	%�	%�	%�&�	%�	%�	%�
%�S�)�)�
�����Z�Z�\�\�2�2�2�#�Z�Z�\�\�1�	G�	G�I��K�K�!�K�����K�*�*�Q�*�/�/�/��K�*�*�1�-�-�-����i���e�U�C�C�C����n�g�y�#�F�F�F�F�'�����.�.�
����������*�*�1�-�-�-���*�*�Q�*�/�/�/����)�]�_�e�U�C�C�C����.�'�=�#�F�F�F�	
���)�]�3�3�3�����A�������.�.�q�1�1�1����.�.��.�3�3�3����.�'�=�3D�c�J�J�J��������a� � � �������0�0��3�3�3�������0�0�1�0�5�5�5����.�'�=�3D�3D�3F�3F��L�L�L�L�Lrc�0�Gd�dt��}||_t|��}|��}|�tt
|d��|���}|�tt
|d��t|����}|�tt
|d��|�t|��|���}|�tt
|d��dS)Nc��eZdZdZdS)�+SpecSignatureTest.test_inherit.<locals>.FoorlNr�rrrrBrp�r�rrBr)r-rBrr�r�r�r�)rrBr0�instance�
attr_instance�call_results      r�test_inheritzSpecSignatureTest.test_inherit�s��	�	�	�	�	�&�	�	�	�����s�#�#���4�6�6�����.�'�8�S�A�A�A����
�
�
����.�'�=�#�F�F�F��s�s�u�u�%�%�����.�'�4��=�=�=����)�T�*�*�*��h�h�j�j�����.�'�;��D�D�D�D�Drc�D�td��tt��td��tt��ti��tt��tg��tt��tt����tt
��td��tt��td��tt��td��td��dS)NrUr+g�?y�?FT)rr�r4r�r/�set�float�complexrs r�
test_builtinszSpecSignatureTest.test_builtins�s������������������������������������������������������������������������ � � ������������rc��d�}t|��}|�t|��|dd��|�dd��|�dd���|�dd���||_t|��}|�t|j��|�dd��|j�dd��|j�dd���dS)Nc��dSrrr�s  rr�z*SpecSignatureTest.test_function.<locals>.f�rrrUrkr�r�rlrn)rr�r�r.r��rr�r0s   r�
test_functionzSpecSignatureTest.test_function�s�������q�!�!�����)�T�*�*�*���Q��
�
�
�����1�%�%�%�����Q��'�'�'����!�q��)�)�)�����q�!�!�����)�T�V�,�,�,����q�!������!�!�!�Q�'�'�'���!�!�A��!�+�+�+�+�+rc�����Gd�dt���G�fd�dt��}|�|�dd��d��t|���|�t
�fd���|���dd���jj��|�t�fd	����j}|j	|j
fdS)
Nc��eZdZdd�ZdS)�;SpecSignatureTest.test_skip_attributeerrors.<locals>.RaiserNc�(�|�td���dS)Nz$Can only be accessed via an instancer!)rr��types   rrzCSpecSignatureTest.test_skip_attributeerrors.<locals>.Raiser.__get__�s���;�(�)O�P�P�P��;rrrrrr�Raiserr��s.������
Q�
Q�
Q�
Q�
Q�
Qrr�c�:��eZdZ���Zed���ZdS)�@SpecSignatureTest.test_skip_attributeerrors.<locals>.RaiserClassc��||zSrrr�s  r�existingzISpecSignatureTest.test_skip_attributeerrors.<locals>.RaiserClass.existings���1�u�rN)r#r$r%�raiserrLr�)r�s�r�RaiserClassr�s9��������V�X�X�F�
�
�
��\�
�
�
rr�rUrkrlc�2����ddd��S)NrUrkrl)r�)r��ss �rrz=SpecSignatureTest.test_skip_attributeerrors.<locals>.<lambda>s���q�z�z�!�Q��/B�/B�rc����jSr)�nonexisting)r�s�rrz=SpecSignatureTest.test_skip_attributeerrors.<locals>.<lambda>s	���!�-�r)r-r,r�rr�r�r�r�r�r+rD)rr�r�r�r�s   @@r�test_skip_attributeerrorsz+SpecSignatureTest.test_skip_attributeerrors�s&����	Q�	Q�	Q�	Q�	Q�V�	Q�	Q�	Q�
	�	�	�	�	�	�	�&�	�	�	�	
����-�-�a��3�3�Q�7�7�7��K�(�(�����)�%B�%B�%B�%B�C�C�C�������A�q�)�)�1�:�+B�C�C�C����.�*?�*?�*?�*?�@�@�@��h���������rc���Gd�dt��}t|��}|�t|��|d��|�d��|�d���|�t
|jd��|dd��|�dd��|�dd���|�t
|jdd���dS)	Nc��eZdZdd�ZdS)�3SpecSignatureTest.test_signature_class.<locals>.Foorlc��dSrrrs   r�__init__z<SpecSignatureTest.test_signature_class.<locals>.Foo.__init__rrNr��r#r$r%r�rrrrBr�s������,�,�,�,�,�,rrBrUr�rkrnr�r�)r-rr�r�rTr�r.rYs   r�test_signature_classz&SpecSignatureTest.test_signature_classs��	-�	-�	-�	-�	-�&�	-�	-�	-��s�#�#�����)�T�*�*�*���Q�����$�$�Q�'�'�'��$�$�q�$�)�)�)����.�$�*F��J�J�J���Q��
�
�
�����1�%�%�%����!�q��)�)�)����.�$�*A�Q�!��L�L�L�L�Lrc�J�Gd�dt��}t|��dS)Nc��eZdZdS)�6SpecSignatureTest.test_class_with_no_init.<locals>.FooNr�rrrrBr�*r�rrB)r-r)rrBs  r�test_class_with_no_initz)SpecSignatureTest.test_class_with_no_init's@��	�	�	�	�	�&�	�	�	�������rc��Gd�dt��}t|��}|dd��|�dd��|�dd���|�t|d��|dd��}|�t|��|d���|�d��|�d���|d��|�d��|�d���t|dd����}|d���|�d���|�t|��|d��|�d��dS)Nc��eZdZd�Zd�ZdS)�;SpecSignatureTest.test_signature_callable.<locals>.Callablec��dSrr)rr�rhs   rr�zDSpecSignatureTest.test_signature_callable.<locals>.Callable.__init__1rrc��dSrrr!s  r�__call__zDSpecSignatureTest.test_signature_callable.<locals>.Callable.__call__2rrN)r#r$r%r�r�rrr�Callabler�0s"������*�*�*�'�'�'�'�'rr�rUrk�r�rhrr�)r-rrTr�r�r.)rr�r0rqs    r�test_signature_callablez)SpecSignatureTest.test_signature_callable/s���	(�	(�	(�	(�	(�v�	(�	(�	(��x�(�(����Q��
�
�
��$�$�Q��*�*�*��$�$�q�A�$�.�.�.����)�T�3�/�/�/��4��1�:�:�����)�X�.�.�.���3������(�(��-�-�-��(�(�3�(�/�/�/����
�
�
��#�#�C�(�(�(��#�#�c�#�*�*�*��x�x��1�~�~�.�.����s������$�$�s�$�+�+�+����)�T�*�*�*���S�	�	�	�����$�$�$�$�$rc���Gd�dt��}t|��}|��}|���|�t|d��|�t|��|�t|d��t|����}|�t|��|�t|d��dS)Nc��eZdZd�ZdS)�ASpecSignatureTest.test_signature_noncallable.<locals>.NonCallablec��dSrrrs rr�zJSpecSignatureTest.test_signature_noncallable.<locals>.NonCallable.__init__Ms���rNr�rrr�NonCallabler�Ls#������
�
�
�
�
rr�r)r-rrTr�r�)rr�r0rqs    r�test_signature_noncallablez,SpecSignatureTest.test_signature_noncallableKs���	�	�	�	�	�&�	�	�	��{�+�+���4�6�6���$�$�&�&�&����)�T�3�/�/�/����)�X�.�.�.����)�X�s�3�3�3��{�{�}�}�-�-�����)�T�*�*�*����)�T�3�/�/�/�/�/rc��Gd�dt��}t|��}|j}|�|t	d����|���|j���dS)Nc��eZdZdZdS)�8SpecSignatureTest.test_create_autospec_none.<locals>.FooN)r#r$r%rDrrrrBr�]s�������C�C�CrrB)r-rrD�assertNotIsInstancer�r+rT)rrBr0�nones    r�test_create_autospec_nonez+SpecSignatureTest.test_create_autospec_none\s���	�	�	�	�	�&�	�	�	��s�#�#���x��� � ��t�D�z�z�2�2�2����
�
�
���(�(�*�*�*�*�*rc�t�Gd�dt��}t|��}|�d��|j�d��|j�d���|�d���|j�d��|j�d���dS)Nc��eZdZd�ZdS)�MSpecSignatureTest.test_autospec_functions_with_self_in_odd_place.<locals>.Fooc��dSrr)rrs  rr�zOSpecSignatureTest.test_autospec_functions_with_self_in_odd_place.<locals>.Foo.fjrrNrirrrrBr�is������ � � � � rrB�
r)r-rr�r.)rrBrs   r�.test_autospec_functions_with_self_in_odd_placez@SpecSignatureTest.test_autospec_functions_with_self_in_odd_placehs���	!�	!�	!�	!�	!�&�	!�	!�	!�
�C� � ��	���B����	����r�"�"�"�	����B��'�'�'�	��������	����r�"�"�"�	����B��'�'�'�'�'rc�,����Gd�dt���Gd�dt���G��fd�dt��}t|��}�fd�}||j��||j��||j��||j��dS)Nc�"�eZdZd�Zdd�Zd�ZdS)�CSpecSignatureTest.test_autospec_data_descriptor.<locals>.Descriptorc��||_dSr)r�)rr�s  rr�zLSpecSignatureTest.test_autospec_data_descriptor.<locals>.Descriptor.__init__ws
��"��
�
�
rNc��|Srr)rr�rGs   rrzKSpecSignatureTest.test_autospec_data_descriptor.<locals>.Descriptor.__get__zs���rc��dSrr)rr�r�s   r�__set__zKSpecSignatureTest.test_autospec_data_descriptor.<locals>.Descriptor.__set__}rrr)r#r$r%r�rr�rrr�
Descriptorr�vs>������
#�
#�
#�
�
�
�
�
0�/�/�/�/rr�c��eZdZdS)�CSpecSignatureTest.test_autospec_data_descriptor.<locals>.MyPropertyNr�rrr�
MyPropertyr�r�rr�c�X��eZdZdgZed���Z�d���Z�d��ZdS)�<SpecSignatureTest.test_autospec_data_descriptor.<locals>.Foo�slotc��dSrrrs r�propzASpecSignatureTest.test_autospec_data_descriptor.<locals>.Foo.prop�s�� �Drc��dSrrrs r�subpropzDSpecSignatureTest.test_autospec_data_descriptor.<locals>.Foo.subprop�s��#�trr%N)r#r$r%�	__slots__�propertyr�r��desc)r�r�s��rrBr��sI���������I�
� � ��X� �
�#�#��Z�#��:�b�>�>�D�D�DrrBc������|t��|ddd��|�ddd��|�ddd��|j�ddd��dS)NrUrkrlrnr�r�)r;r�abcrT)�	mock_attrrs �r�check_data_descriptorzNSpecSignatureTest.test_autospec_data_descriptor.<locals>.check_data_descriptor�s{����!�!�)�Y�7�7�7��I�a��A�����M�M�!�Q��"�"�"��-�-�a��A�6�6�6��M�1�1�!�Q��:�:�:�:�:r)r-r�rr�r�r�r�)rrBr+r�r�r�s`   @@r�test_autospec_data_descriptorz/SpecSignatureTest.test_autospec_data_descriptorus�����	0�	0�	0�	0�	0��	0�	0�	0�	�	�	�	�	��	�	�	�		"�		"�		"�		"�		"�		"�		"�		"�&�		"�		"�		"��c�"�"��	;�	;�	;�	;�	;�	��c�h�'�'�'���c�k�*�*�*���c�h�'�'�'���c�h�'�'�'�'�'rc�v�tjtjtj����}|�|��t
��t
|��}|��|���|���|ddd��|�ddd��dS)Nrnr�r�)	�types�
MethodType�time�ctimer;r4rrTrI)r�meth�mockeds   r�'test_autospec_on_bound_builtin_functionz9SpecSignatureTest.test_autospec_on_bound_builtin_function�s������
�D�I�K�K�8�8�����d�d�f�f�c�*�*�*� ��&�&��	������&�&�(�(�(���������q�!�Q�����&�&�q�!�Q�/�/�/�/�/rc��Gd�d��}|��}t|��}|�t|d����dS)Nc��eZdZd�ZdS)�ESpecSignatureTest.test_autospec_getattr_partial_function.<locals>.Fooc�$�td�|��S)Nc��|Srr)�names rrzcSpecSignatureTest.test_autospec_getattr_partial_function.<locals>.Foo.__getattr__.<locals>.<lambda>�s��D�rr)r�	attributes  rr#zQSpecSignatureTest.test_autospec_getattr_partial_function.<locals>.Foo.__getattr__�s���0�0�)�<�<�<rN)r#r$r%r#rrrrBr��s#������
=�
=�
=�
=�
=rrBr#)rr��hasattr)rrB�proxy�autospecs    r�&test_autospec_getattr_partial_functionz8SpecSignatureTest.test_autospec_getattr_partial_function�sh��	=�	=�	=�	=�	=�	=�	=�	=�
�����"�5�)�)�������:�6�6�7�7�7�7�7rc���Gd�d��}t|jd��}|�tj|j��tj|����dS)Nc�&�eZdZedd���ZdS)�CSpecSignatureTest.test_autospec_signature_staticmethod.<locals>.Foor�c��dSrr�rr�cs   r�
static_methodzQSpecSignatureTest.test_autospec_signature_staticmethod.<locals>.Foo.static_method�s��.2�drN�r�)r#r$r%rLr�rrrrBr��s&������
�2�2�2��\�2�2�2rrBr�)r�__dict__r,�inspect�	signaturer�rYs   r�$test_autospec_signature_staticmethodz6SpecSignatureTest.test_autospec_signature_staticmethod�sv��	3�	3�	3�	3�	3�	3�	3�	3��s�|�O�<�=�=������*�3�+<�=�=�w�?P�QU�?V�?V�W�W�W�W�Wrc���Gd�d��}t|jd��}|�tj|j��tj|����dS)Nc�&�eZdZedd���ZdS)�BSpecSignatureTest.test_autospec_signature_classmethod.<locals>.Foor�c��dSrr)rGrrr�s    r�class_methodzOSpecSignatureTest.test_autospec_signature_classmethod.<locals>.Foo.class_method�s��26�$rNr�)r#r$r%rKr�rrrrBr��s&������
�6�6�6��[�6�6�6rrBr�)rr�r,r�r�r�rYs   r�#test_autospec_signature_classmethodz5SpecSignatureTest.test_autospec_signature_classmethod�sv��	7�	7�	7�	7�	7�	7�	7�	7��s�|�N�;�<�<������*�3�+;�<�<�g�>O�PT�>U�>U�V�V�V�V�Vrc�|�d�}t|��}|dd��|dd���|�tj|��tj|����|�|jtdd��tdd���g��|�t|d��dS)Nc��dSrrr�s  r�myfuncz=SpecSignatureTest.test_spec_inspect_signature.<locals>.myfunc�rrrUrkr�)rr,r�r�rKrr�r�)rr�r0s   r�test_spec_inspect_signaturez-SpecSignatureTest.test_spec_inspect_signature�s�������v�&�&����Q��
�
�
���q�A���������*�4�0�0�'�2C�F�2K�2K�L�L�L������4��1�:�:�t�a�1�~�~�~�*F�G�G�G����)�T�1�-�-�-�-�-rc	�D�d
dtdtdtdtfd�}|�|ddd	�
��d��t|��}|ddd	�
��|dd	�
��|�tj|��tj|����|�|jt
ddd	�
��t
dd	�
��g��|�t|d��|�t|ddd	d�
��dS)Nr�rrr��returnc��||z|zSrrr�s   rr+zFSpecSignatureTest.test_spec_inspect_signature_annotations.<locals>.foo�s���q�5�1�9�rrUrkrl)r�r�rnr�)	r�r,rr�r�rKrr�r�)rr+r0s   r�'test_spec_inspect_signature_annotationsz9SpecSignatureTest.test_spec_inspect_signature_annotations�s,��	�	�3�	�3�	��	��	�	�	�	�	
�����Q��a����!�,�,�,��s�#�#����Q��Q�������Q�!���������*�4�0�0�'�2C�C�2H�2H�I�I�I������4��1��?�?�?�D��a�L�L�L�*I�J�J�J����)�T�1�-�-�-����)�T�1�a��a��8�8�8�8�8rc�`�d�}t|��}|�|jd��dS)Nc��dS)N�noperrrrrz>SpecSignatureTest.test_spec_function_no_name.<locals>.<lambda>�s��v�r�funcopy)rr,r#)r�funcr0s   r�test_spec_function_no_namez,SpecSignatureTest.test_spec_function_no_name�s4���~���t�$�$�������	�2�2�2�2�2rc�2�d�}t|��}|d��|�td��g��|�t��5|�td��g��ddd��dS#1swxYwYdS)Nc��dSrrr�s rr�z@SpecSignatureTest.test_spec_function_assert_has_calls.<locals>.f�rrrUrk)rrWrr�r�r|s   r�#test_spec_function_assert_has_callsz5SpecSignatureTest.test_spec_function_assert_has_calls�s�������q�!�!����Q�������t�A�w�w�i�(�(�(�
�
�
�~�
.�
.�	-�	-��!�!�4��7�7�)�,�,�,�	-�	-�	-�	-�	-�	-�	-�	-�	-�	-�	-�	-����	-�	-�	-�	-�	-�	-s�$B�B�Bc��d�}t|��}|d��|�d��|�t��5|�d��ddd��dS#1swxYwYdS)Nc��dSrrr�s rr�z?SpecSignatureTest.test_spec_function_assert_any_call.<locals>.f�rrrUrk)rrXr�r�r|s   r�"test_spec_function_assert_any_callz4SpecSignatureTest.test_spec_function_assert_any_call�s�������q�!�!����Q�������Q����
�
�
�~�
.�
.�	$�	$�� � ��#�#�#�	$�	$�	$�	$�	$�	$�	$�	$�	$�	$�	$�	$����	$�	$�	$�	$�	$�	$s�
A0�0A4�7A4c��d�}t��}t||���}|d��d��|�|jt	d��g��|�|jt	d��g��|���|�|jg��|�|jg��dS)Nc��dSrrr�s rr�z:SpecSignatureTest.test_spec_function_reset_mock.<locals>.frrr�rUrk)rrr,rKrrI)rr��rvr0s    r�test_spec_function_reset_mockz/SpecSignatureTest.test_spec_function_reset_mocks������
�V�V���q�r�2�2�2�����Q����
�
�
������4��7�7�)�4�4�4�������a���	�2�2�2������������"�-�-�-�������+�+�+�+�+rN)+r#r$r%r�r�r�r�r�r�r�r�r�rrr'r2r7r<rBrUr`rmrtryr}r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrrrr�r�{s�������+�+�+�6)�)�)�	(�	(�	(�2�2�2�'�'�'�#�#�#�	%�	%�	%�*�*�*�D�D�D�$-�-�-�!�!�!�(���2E�E�E�86�6�6�,;�;�;�	P�	P�	P�1�1�1�(M�M�M�,#M�#M�#M�LE�E�E�0���*,�,�,�$���0M�M�M�$���%�%�%�80�0�0�"	+�	+�	+�
(�
(�
(�)(�)(�)(�X
0�
0�
0�
8�
8�
8�X�X�X�W�W�W�
.�
.�
.�
9�
9�
9� 3�3�3�-�-�-�$�$�$�	,�	,�	,�	,�	,rr�c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestCallListc���t��}|�|jt��|dd��|d���|dd��|d���t	dd��t	d���t	dd��t	d���fD]}|�||j���t	d���t	dd��g}|�||j��t	dd��t	d���g}|�||j��t	dd��t	d���g}|�||j��t	dd��g}|�||j��|�t	d��|j��|�t	d��g|j��dS)	NrUrkrlr�rnr�r�r�)rr;r�r	rr��assertNotIn)rr0rq�callss    r�!test_args_list_contains_call_listz.TestCallList.test_args_list_contains_call_lists����v�v�����d�1�9�=�=�=���Q��
�
�
���q�	�	�	�	���Q��
�
�
���q�	�	�	�	���A�J�J��q�	�	�	�4��1�:�:�t�a�y�y�y�@�	5�	5�D��M�M�$�� 3�4�4�4�4������D��A�J�J�'���
�
�e�T�0�1�1�1��a����T�A�Y�Y�Y�'���
�
�e�T�0�1�1�1��a����T�A�Y�Y�Y�'���
�
�e�T�0�1�1�1��a�������
�
�e�T�0�1�1�1�����f���t�':�;�;�;����$�v�,�,���)<�=�=�=�=�=rc��t��}|dd��|�d���|j����dd���d}|�t|j��|��dS)	NrUrkrlr�r��dog)�catzU[call(1, 2),
 call.foo(a=3),
 call.foo.bar(),
 call.foo.bar().baz('fish', cat='dog')])rr+rDrgr,r4rK)rr0rMs   r�test_call_list_strzTestCallList.test_call_list_str)s����v�v����Q��
�
�
����1��
�
�
���������6�u��-�-�-�
6�	�	
����T�_�-�-�x�8�8�8�8�8rc�V�tdtzt���}|���}	tj|���t	��}|j|���|�|j	t��t��g��d|_|�|j	t��t��td��g��|���dS#|���wxYw)Nz%s.SomeClass.one)�new_callablerl)r
r#rr�rrrTr.r,rKr�stop)rr�r0r�s    r�test_propertymockzTestCallList.test_propertymock8s����$�x�/�l�K�K�K���w�w�y�y��	��M�M��(�(�*�*�*����A�
�E�E��#�#�%�%�%����T�_�t�v�v�t�v�v�.>�?�?�?��A�E����T�_�t�v�v�t�v�v�t�A�w�w�.G�H�H�H�
�F�F�H�H�H�H�H��A�F�F�H�H�H�H���s�CD�D(c��t��}t��}|t|��_|j}|���|�|t��|�|t��dSr)rrr�r+rTr;r��rr�r��returneds    r�test_propertymock_barez#TestCallList.test_propertymock_bareJsl���K�K���N�N����Q�����5��	�!�!�#�#�#����h�	�2�2�2�� � ��<�8�8�8�8�8rc��t��}td���}|t|��_|j}|���|�|d��|�|t��dS)Nr%r�)rrr�r+rTr,r�rs    r�test_propertymock_returnvaluez*TestCallList.test_propertymock_returnvalueUss���K�K���b�)�)�)����Q�����5��	�!�!�#�#�#�����2�&�&�&�� � ��<�8�8�8�8�8rc��t��}tt���}|t|��_|�t��5|jddd��n#1swxYwY|���dS)N)�side_effect)rr�
ValueErrorr�r+r�rT)rr�r�s   r�test_propertymock_side_effectz*TestCallList.test_propertymock_side_effect`s����K�K���Z�0�0�0����Q����
�
�
�z�
*�
*�	�	�
�E�E�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�!�!�#�#�#�#�#s�A&�&A*�-A*N)	r#r$r%rrrrrr#rrrr
r
sn������>�>�>�29�9�9����$9�9�9�9�9�9�$�$�$�$�$rr
c�2�eZdZd�Zd�Zd�Zd�Zd�Zd�ZdS)�TestCallablePredicatec��tttttt
fD]$}|�t|�����%dSr)r4�bytesr�r/�tuplerr�r)rr�s  r�	test_typezTestCallablePredicate.test_typelsC�����T�5�)�<�	,�	,�C��O�O�I�c�N�N�+�+�+�+�	,�	,rc�x�Gd�d��}|��}|�t|����dS)Nc��eZdZd�ZdS)�>TestCallablePredicate.test_call_magic_method.<locals>.Callablec��dSrrrs rr�zGTestCallablePredicate.test_call_magic_method.<locals>.Callable.__call__rrrN)r#r$r%r�rrrr�r,qr�rr�)r�r)rr�rqs   r�test_call_magic_methodz,TestCallablePredicate.test_call_magic_methodpsU��	%�	%�	%�	%�	%�	%�	%�	%��8�:�:�����	�(�+�+�,�,�,�,�,rc�n�Gd�d��}|�t|j����dS)Nc�$�eZdZed���ZdS)�ATestCallablePredicate.test_staticmethod.<locals>.WithStaticMethodc��dSrrrrr�
staticfunczLTestCallablePredicate.test_staticmethod.<locals>.WithStaticMethod.staticfuncxrHrN)r#r$r%rLr3rrr�WithStaticMethodr1ws#������
�"�"��\�"�"�"rr4)r�rr3)rr4s  r�test_staticmethodz'TestCallablePredicate.test_staticmethodvsP��	#�	#�	#�	#�	#�	#�	#�	#�	
���	�"2�"=�>�>�?�?�?�?�?rc�n�Gd�d��}|�t|j����dS)Nc�$�eZdZed��ZdS)�MTestCallablePredicate.test_non_callable_staticmethod.<locals>.BadStaticMethodN)r#r$r%rL�not_callablerrr�BadStaticMethodr8}s������'�<��-�-�L�L�Lrr:�r�rr9)rr:s  r�test_non_callable_staticmethodz4TestCallablePredicate.test_non_callable_staticmethod|sO��	.�	.�	.�	.�	.�	.�	.�	.�����?�#?�@�@�A�A�A�A�Arc�n�Gd�d��}|�t|j����dS)Nc�$�eZdZed���ZdS)�?TestCallablePredicate.test_classmethod.<locals>.WithClassMethodc��dSrr)rGs r�	classfunczITestCallablePredicate.test_classmethod.<locals>.WithClassMethod.classfunc�s�� $�rN)r#r$r%rKrArrr�WithClassMethodr?�s#������
�$�$��[�$�$�$rrB)r�rrA)rrBs  r�test_classmethodz&TestCallablePredicate.test_classmethod�sO��	%�	%�	%�	%�	%�	%�	%�	%�	
���	�/�";�<�<�=�=�=�=�=rc�n�Gd�d��}|�t|j����dS)Nc�$�eZdZed��ZdS)�KTestCallablePredicate.test_non_callable_classmethod.<locals>.BadClassMethodN)r#r$r%rKr9rrr�BadClassMethodrF�s������&�;�t�,�,�L�L�LrrGr;)rrGs  r�test_non_callable_classmethodz3TestCallablePredicate.test_non_callable_classmethod�sO��	-�	-�	-�	-�	-�	-�	-�	-�����>�#>�?�?�@�@�@�@�@rN)	r#r$r%r)r.r5r<rCrHrrrr%r%jsy������,�,�,�-�-�-�@�@�@�B�B�B�
>�>�>�A�A�A�A�Arr%�__main__)r�r�r��unittest�
unittest.mockrrrrrrr	r
rrr
�	functoolsrr-r�TestCaser'rbr�r
r%r#�mainrrr�<module>rOs%������������������������������������������
������������"�"�"�"�"��"�"�"�C%�C%�C%�C%�C%�h��C%�C%�C%�J^
�^
�^
�^
�^
�x� �^
�^
�^
�B	P
,�P
,�P
,�P
,�P
,��)�P
,�P
,�P
,�fY$�Y$�Y$�Y$�Y$�8�$�Y$�Y$�Y$�x A� A� A� A� A�H�-� A� A� A�F�z����H�M�O�O�O�O�O��r

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