Sindbad~EG File Manager
�
&Μgb����dZddlZddlZddlZddlZddlZddlZddlZddlZddlm Z ddl
mZmZm
Z
ddlmZddlmZmZddlmZGd�d e�Zee�D�chc]}|j1d
�r�|��c}ZdZeZd�Zd
�Zd�Zd�Z d�Z!d�Z"dyd�Z#d�Z$d�Z%d�Z&d�Z'dyd�Z(d�Z)d�Z*d�Z+Gd�de,�Z-Gd�de,�Z.e.�Z/e/j`Z0e/jbZ2e/jfZ4hd �Z5d!�Z6Gd"�d#e7�Z8d$�Z9Gd%�d&e,�Z:Gd'�d(e,�Z;Gd)�d*e;�Z<e=ee<�D�chc]$}|j1d+�r|j}d+���&c}�Z?Gd,�d-e7�Z@d.�ZAGd/�d0e;�ZBGd1�d2eBe<�ZCd3�ZDGd4�d5e,�ZEd6�ZFe0dddddfdd7�d8�ZG dzd9�ZHe0dddddfdd7�d:�ZIGd;�d<e,�ZJd=�ZKd>�ZLeGeI_,eJeI_MeHeI_NeLeI_Od?eI_Pd@ZQdAZRdBj�dC�eRj��D��ZUdBj�dD�eRj��D��ZVhdE�ZWdF�ZXdBj�eQeReUeVg�j��D�chc]}dG|z�� c}ZYhdH�ZZdIhZ[eZe[zZ\eYeWzZ]e]e\zZ^hdJ�Z_dK�dL�dM�dN�dO�Z`eaeaeaeadPddddQdRddPddS�
ZbdT�ZcdU�ZddV�ZedW�ZfecedeeefdX�ZgdY�ZhGdZ�d[e;�ZiGd\�d]eie<�ZjGd^�d_ei�ZkGd`�daeieC�ZlGdb�dce;�Zm ej�eej�d��Zpee�ZqGdd�dee;�ZsGdf�dgesekeC�ZtGdh�die,�Zueu�Zvdj�ZwGdk�dlex�Zyeyd�m�Zz d{dd7�dn�Z{do�Z|Gdp�dqe,�Z}e~e{�e~evj��fZ�da�da�dr�Z�d|ds�Z�Gdt�dueC�Z�dv�Z�Gdw�dx�Z�ycc}wcc}wcc}w#er$rdZpY��wxYw)})�Mock� MagicMock�patch�sentinel�DEFAULT�ANY�call�create_autospec� AsyncMock�
FILTER_DIR�NonCallableMock�NonCallableMagicMock� mock_open�PropertyMock�seal�N)�iscoroutinefunction)�CodeType�
ModuleType�
MethodType)� safe_repr)�wraps�partial)�RLockc��eZdZy)�InvalidSpecErrorN��__name__�
__module__�__qualname__���*/usr/local/lib/python3.12/unittest/mock.pyrr)s��Br!r�_Tc��t|�rt|t�syt|d�rt |d�}t|�xst
j|�S)NF�__func__)�_is_instance_mock�
isinstancer
�hasattr�getattrr�inspect�isawaitable��objs r"�
_is_async_objr.5sG�����j��i�&@���s�J���c�:�&���s�#�?�w�':�':�3�'?�?r!c�4�t|dd�rt|�Sy)N�__code__F)r)r)�funcs r"�_is_async_funcr2=s���t�Z��&�"�4�(�(�r!c�4�tt|�t�S�N)�
issubclass�typerr,s r"r&r&Ds���d�3�i��1�1r!c�j�t|t�xs"t|t�xrt|t�Sr4)r'�
BaseExceptionr6r5r,s r"�
_is_exceptionr9Js-���3�
�&� A��3���@�*�S�-�"@�r!c�V�t|t�rt|d�r|jS|S�N�mock)r'�
FunctionTypesr(r<r,s r"�
_extract_mockr>Qs%���#�}�%�'�#�v�*>��x�x���
r!c�x� t|t�r|s|j}d}nRt|ttf�rt|t�rd}|j
}nt|t�s
|j}|r
t|d�}n|} |tj|�fS#t$rYywxYw#t$rYywxYw�NT)
r'r6�__init__�classmethod�staticmethodr%r=�__call__�AttributeErrorrr*� signature�
ValueError)r1�as_instance�eat_self�sig_funcs r"�_get_signature_objectrKZs����
�$���k��}�}���� �D�;��5� 6��d�K�(��H��}�}��
��m�
,� ��=�=�D���4��&������W�&�&�x�0�0�0��� �� ������s$�)B�B-� B*�)B*�- B9�8B9Fc���t|||����y�\}��fd�}t||�|t|�_�t|�_y)Nc�*���j|i|��yr4��bind)�self�args�kwargs�sigs �r"�checksigz"_check_signature.<locals>.checksig���������$�!�&�!r!)rK�_copy_func_detailsr6�_mock_check_sig�
__signature__)r1r<� skipfirst�instancerTrSs @r"�_check_signaturer[}sI���
��h� �
:�C�
�{���I�D�#�"��t�X�&�!)�D��J��"�D��J�r!c �`�dD]} t||t||���y#t$rY�)wxYw)N)r�__doc__�__text_signature__r�__defaults__�__kwdefaults__)�setattrr)rE)r1�funcopy� attributes r"rVrV�s:��� � ��G�Y���i�(@�A���� �� �s�!� -�-c��t|t�ryt|tttf�rt|j�St|dd��yy)NTrDF)r'r6rCrBr� _callabler%r)r,s r"rere�sD���#�t����#��k�:�>�?�����&�&��s�J��%�1��r!c�0�t|�ttfvSr4)r6�list�tupler,s r"�_is_listri�s����9��u�
�%�%r!c�� t|t�st|dd�duS|f|jzD]}|jjd���yy)NrDTF)r'r6r)�__mro__�__dict__�get)r-�bases r"�_instance_callablero�sZ��@��c�4� ��s�J��-�T�9�9������$���=�=���Z�(�4��%�r!c���t|t�}t|||�}|�|S|\}��fd�}t||�|j}|j�sd}||d�}d|z} t
| |�||}
t|
|��|
S)Nc�*���j|i|��yr4rN)rQrRrSs �r"rTz _set_signature.<locals>.checksig�rUr!rb)�
_checksig_r<zYdef %s(*args, **kwargs):
_checksig_(*args, **kwargs)
return mock(*args, **kwargs))r'r6rKrVr�isidentifier�exec�_setup_func)r<�originalrZrY�resultr1rT�name�context�srcrbrSs @r"�_set_signaturer{�s����
�8�T�*�I�
"�8�X�y�
A�F�
�~����I�D�#�"��t�X�&����D�������%�t�4�G�$�&*�+�C� �#�w���d�m�G����s�#��Nr!c�������_�fd�}�fd�}�fd�}�fd�}�fd�}�fd�}�fd�} ��fd�}
d �_d
�_d�_t ��_t ��_t ��_�j�_�j�_ �j�_
|�_|�_|�_
| �_|
�_|�_|�_|�_|�_��_y)Nc�(���j|i|��Sr4)�assert_called_with�rQrRr<s �r"r~z'_setup_func.<locals>.assert_called_with�����&�t�&�&��7��7�7r!c�(���j|i|��Sr4)�
assert_calledrs �r"r�z"_setup_func.<locals>.assert_called�s���!�t�!�!�4�2�6�2�2r!c�(���j|i|��Sr4)�assert_not_calledrs �r"r�z&_setup_func.<locals>.assert_not_called�s���%�t�%�%�t�6�v�6�6r!c�(���j|i|��Sr4)�assert_called_oncers �r"r�z'_setup_func.<locals>.assert_called_once�r�r!c�(���j|i|��Sr4)�assert_called_once_withrs �r"r�z,_setup_func.<locals>.assert_called_once_with�s���+�t�+�+�T�<�V�<�<r!c�(���j|i|��Sr4)�assert_has_callsrs �r"r�z%_setup_func.<locals>.assert_has_calls�s���$�t�$�$�d�5�f�5�5r!c�(���j|i|��Sr4)�assert_any_callrs �r"r�z$_setup_func.<locals>.assert_any_call�s���#�t�#�#�T�4�V�4�4r!c���t��_t��_�j��j}t|�r|�ur|j�yyyr4)� _CallList�method_calls�
mock_calls�
reset_mock�return_valuer&)�retrbr<s ��r"r�z_setup_func.<locals>.reset_mock�sL���(�{���&�[��������"�"���S�!�#��+��N�N��+6�!r!Fr)r<�called�
call_count� call_argsr��call_args_listr�r�r��side_effect�_mock_childrenr~r�r�r�r�r�r�r�rX�_mock_delegate)rbr<rSr~r�r�r�r�r�r�r�s`` r"ruru�s�����G�L�8�3�7�8�=�6�5���G�N��G���G��&�[�G��$�;�G��"��G���,�,�G���*�*�G��!�0�0�G��!3�G��&=�G�#�/�G��-�G��#�G��)�G�� 1�G��!3�G���G��!�D�r!c ����tjj�_d�_d�_t��_�fd�}dD]}t�|t||���y)Nrc�<��t�j|�|i|��Sr4)r)r<)�attrrQrRr<s �r"�wrapperz"_setup_async_mock.<locals>.wrapper
s ���'�w�t�y�y�$�'��8��8�8r!)�assert_awaited�assert_awaited_once�assert_awaited_with�assert_awaited_once_with�assert_any_await�assert_has_awaits�assert_not_awaited) �asyncio�
coroutines�
_is_coroutine�await_count�
await_argsr��await_args_listrar)r<r�rcs` r"�_setup_async_mockr�sV��� �+�+�9�9�D���D���D�O�$�;�D��
9�,� � ��i���)�!<�=�,r!c��d|ddz|k(S)N�__%s__����r �rxs r"� _is_magicr�s���d�1�R�j� �D�(�(r!c� �eZdZ d�Zd�Zd�Zy)�_SentinelObjectc��||_yr4r��rPrxs r"rAz_SentinelObject.__init__"s ���� r!c� �d|jzS�Nzsentinel.%sr��rPs r"�__repr__z_SentinelObject.__repr__%����t�y�y�(�(r!c� �d|jzSr�r�r�s r"�
__reduce__z_SentinelObject.__reduce__(r�r!N)rrrrAr�r�r r!r"r�r� s��'��)�)r!r�c� �eZdZ d�Zd�Zd�Zy)� _Sentinelc��i|_yr4)�
_sentinelsr�s r"rAz_Sentinel.__init__.s ����r!c�b�|dk(rt�|jj|t|��S)N� __bases__)rEr��
setdefaultr�r�s r"�__getattr__z_Sentinel.__getattr__1s,���;�� � ����)�)�$���0E�F�Fr!c��y)Nrr r�s r"r�z_Sentinel.__reduce__7s��r!N)rrrrAr�r�r r!r"r�r�,s��K��G�r!r�>�
_mock_namer��_mock_parentr��_mock_new_name�_mock_new_parent�_mock_side_effect�_mock_return_valuec�f�tj|�d|z}||fd�}||fd�}t||�S)N�_mock_c�N�|j}|�t||�St||�Sr4)r�r))rPrx� _the_namerSs r"�_getz"_delegating_property.<locals>._getLs,���!�!���;��4��+�+��s�D�!�!r!c�Z�|j}|�||j|<yt|||�yr4)r�rlra)rP�valuerxr�rSs r"�_setz"_delegating_property.<locals>._setQs,���!�!���;�',�D�M�M�)�$��C��u�%r!)�_allowed_names�add�property)rxr�r�r�s r"�_delegating_propertyr�Is>�����t���4��I�� �"�
$�y�&��D�$��r!c��eZdZd�Zd�Zy)r�c���t|t�stj||�St|�}t|�}||kDryt d||z
dz�D]}||||z}||k(s�yy)NFr�T)r'rg�__contains__�len�range)rPr�� len_value�len_self�i�sub_lists r"r�z_CallList.__contains__^sw���%��&��$�$�T�5�1�1���J� ��t�9���x����q�(�Y�.��2�3�A��A�a� �k�*�H��5� ��4�r!c�>�tjt|��Sr4)�pprint�pformatrgr�s r"r�z_CallList.__repr__ls���~�~�d�4�j�)�)r!N)rrrr�r�r r!r"r�r�\s���*r!r�c��t|�}t|�sy|js$|js|j�|j
�y|}|�||ury|j
}|��|r||_||_|r||_||_y)NFT)r>r&r�r�r�r�)�parentr�rx�new_name�_parents r"�_check_and_set_parentr�ps����%� �E��U�#�� � � �U�1�1� � � � '� � � � +���G�
�
��e����*�*���
��!'���'����#������r!c��eZdZd�Zd�Zy)� _MockIterc�$�t|�|_yr4)�iterr-)rPr-s r"rAz_MockIter.__init__�s
����9��r!c�,�t|j�Sr4)�nextr-r�s r"�__next__z_MockIter.__next__�s���D�H�H�~�r!N)rrrrAr�r r!r"r�r��s���r!r�c��eZdZeZdZd�Zy)�BaseNc��yr4r �rPrQrRs r"rAz
Base.__init__�s��r!)rrrrr�r�rAr r!r"r�r��s�� ����
r!r�c��eZdZ e�Z d+d�Z d+d�Zd�Zd,d�Z d-d�Z d�Z
d �Zd
Ze
e
ee�Ze
d��Zed�Zed
�Zed�Zed�Zed�Zd�Zd�Ze
ee�Zd.ddd�dedefd�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z!d�Z"d/d�Z#d �Z$d!�Z%d"�Z&d#�Z'd$�Z(d%�Z)d&�Z*d,d'�Z+d(�Z,d)�Z-d0d*�Z.y)1rNFc���|f}
t|t�s|xs|}|�t|�rt|f}
t|j|
d|j
i�}t
t|�j|�}|S)Nr]) r5�AsyncMockMixinr.r6rr]�_safe_superr�__new__)�cls�specrrx�spec_setr��_spec_state� _new_name�_new_parent�_spec_as_instance� _eat_self�unsaferR�bases�spec_arg�newrZs r"r�zNonCallableMock.__new__�sm������#�~�.��'�4�H��#�
�h�(?�'��-���3�<�<���C�K�K�(@�A�����4�<�<�S�A���r!c��|�|}|j}
||
d<||
d<||
d<||
d<d|
d<|�|}d}|
�|du}
|j||| |
�i|
d<||
d <d|
d
<d|
d<d|
d<d
|
d<t�|
d<t�|
d<t�|
d<||
d<|r|jdi|��t t
|�j
||||||�y)Nr�r�r�r�F�_mock_sealedTr��_mock_wrapsr��_mock_called�_mock_call_argsr�_mock_call_count�_mock_call_args_list�_mock_mock_callsr��_mock_unsafer )rl�_mock_add_specr��configure_mockr�rrA)rPr�rrxr�r�r�r�rrrrrRrls r"rAzNonCallableMock.__init__�s*��
�� �K��=�=��#)��� �!%����%.��!�"�'2��#�$�#(��� ����D��H����d�*�I����D�(�,=�y�I�%'��!�"�"'����%)��!�"�#(��� �&*��"�#�'(��#�$�+4�;��'�(�'0�{��#�$�#,�;��� �#)��� ���D���)�&�)��O�T�*�3�3��%��x���
r!c�n� t|�}d|_d|_d|_d|_t|||�y�N�)r>r�r�r�r�ra)rPr<rc�
inner_mocks r"�attach_mockzNonCallableMock.attach_mock�s@�� C�#�4�(�
�"&�
��&*�
�#� "�
��$(�
�!���i��&r!c�*� |j||�yr4)r�rPr�r�s r"�
mock_add_speczNonCallableMock.mock_add_spec�s�� N�
���D�(�+r!c��t|�rtd|�d���d}d}g}|�{t|�spt|t�r|}nt |�}t|||�}|xr|d}t
|�} | D]*}
tt||
d��s�|j|
��,| }|j}||d<||d<||d<||d<||d<y) Nz#Cannot spec a Mock object. [object=�]r��_spec_class� _spec_set�_spec_signature�
_mock_methods�_spec_asyncs)r&rrir'r6rK�dirrr)�appendrl)rPr�r�rrrrr �res� spec_listr�rls r"rzNonCallableMock._mock_add_spec�s����T�"�"�%H���PQ�#R�S�S���������H�T�N��$��%�"��"�4�j��'��(9�9�F�C�!�n�c�!�f�O��D� �I�!��&�w�t�T�4�'@�A� �'�'��-�"��D��=�=��"-���� (����&5��"�#�$(���!�#/��� r!c��|j}|j�|jj}|tur&|j�|j|d��}||_|S)N�()�rr�)r�r�r�rr �_get_child_mock)rPr�s r"�__get_return_valuez"NonCallableMock.__get_return_valuese���%�%�����*��%�%�2�2�C��'�>�d�.�.�6��&�&� �D�'��C�!$�D���
r!c�j�|j�||j_y||_t||dd�y)Nr&)r�r�r�r�)rPr�s r"�__set_return_valuez"NonCallableMock.__set_return_value*s2�����*�/4�D���,�&+�D�#�!�$��t�T�:r!z1The value to be returned when the mock is called.c�H�|j�t|�S|jSr4)rr6r�s r"� __class__zNonCallableMock.__class__6s$�����#���:�����r!r�r�r�r�r�c���|j}|�|jS|j}|�8t|�s-t |t
�st
|�st|�}||_|Sr4)r�r�r��callabler'r�r9)rP� delegated�sfs r"�__get_side_effectz!NonCallableMock.__get_side_effectCs\���'�'� ����)�)�)�
�
"�
"���N�8�B�<�"�2�y�1�-��:K��2��B�$&�I�!�� r!c�T�t|�}|j}|�||_y||_yr4)� _try_iterr�r�r�)rPr�r0s r"�__set_side_effectz!NonCallableMock.__set_side_effectNs-���%� ���'�'� ���%*�D�"�$)�I�!r!�r�r�r�r�c�� |�g}t|�|vry|jt|��d|_d|_d|_t�|_t�|_t�|_|rt|_
|rd|_|jj�D]/}t|t�s|t ur�|j#|||���1|j}t%|�r||ur|j#|�yyy)NFrr6)�idr"r�r�r�r�r�r�r�rr�r�r��valuesr'�
_SpecState�_deletedr�r&)rP�visitedr�r��childr�s r"r�zNonCallableMock.reset_mockYs��� 8��?��G�
�d�8�w������r�$�x� ����������#�+���'�k���%�K����&-�D�#��%)�D�"��(�(�/�/�1�E��%��,���0A�����W�<�[��Y�2�
�%�%���S�!�c��o��N�N�7�#�'6�!r!c��� t|j�d���D]H\}}|jd�}|j�}|}|D]}t ||�}�t|||��Jy)Nc�*�|djd�S)Nr�.)�count)�entrys r"�<lambda>z0NonCallableMock.configure_mock.<locals>.<lambda>�s���q�����1Dr!)�keyr@)�sorted�items�split�popr)ra)rPrR�arg�valrQ�finalr-rBs r"rzNonCallableMock.configure_mockysm�� ,��v�|�|�~�$E� F�H�C��
�9�9�S�>�D��H�H�J�E��C����c�5�)����C���$�Fr!c
���|dvrt|��|j�$||jvs|tvr$td|z��t|�rt|��|jsD|jr||jvr*|jd�s|tvrt|�d|�d���tj5|jj|�}|turt|��|�Jd}|j�t|j|�}|j|||||��}||j|<nat|t �rQ t#|j$|j&|j(|j*|j,�}||j|<ddd�|S#t.$r6|j0dxs|}t/d|�d |�d
|�d|j$�d� ��wxYw#1swYSxYw)
N>rrzMock object has no attribute %r)�assert�assret�asert�aseert�assrtz6 is not a valid assertion. Use a spec for the mock if z is meant to be an attribute.)r�rxrr�rr��Cannot autospec attr �
from target �, as it has already been mocked out. [target=�, attr=r)rEr�_all_magicsr�r�
startswith�_ATTRIB_DENY_LISTr�_lockr�rmr;r r)r(r'r:r r�r�rZr�rxrrl)rPrxrwr�target_names r"r�zNonCallableMock.__getattr__�s
���4�4� ��&�&�
�
�
�
+��4�-�-�-���1D�$�%F��%M�N�N�
�t�_� ��&�&�� � �$�*<�*<��D�L^�L^�@^����O�P�TX�\m�Tm�$��h�'�'+�h�.K�M�N�N��
"�
"��(�(�,�,�T�2�F���!�$�T�*�*������#�#�/�$�D�$4�$4�d�;�E��-�-��d�%�4� $�.���.4��#�#�D�)��F�J�/�
D�,����V�_�_�f�o�o��
�
�v�{�{��F�.4��#�#�D�)�;#�>�
��(�D�"&�-�-��"=�"E��K�*�/��x�}�&�/�*#�#'�(�'�&�+�+���C�D�D�D��/#�>�
�s&�6BG�AF�G�?G�G�G(c�|�|jg}|j}|}d}|dgk(rd}|�B|}|j|j|z�d}|jdk(rd}|j}|��Btt |��}|j
xsd}t
|�dkDr|ddvr|dz
}||d<dj|�S)Nr@r&rr<r�)r&z().r)r�r�r"rg�reversedr�r��join)rP�
_name_listr��last�dot�_firsts r"�_extract_mock_namez"NonCallableMock._extract_mock_name�s����)�)�*�
��'�'�������$����C��!��D����g�4�4�s�:�;��C��%�%��-����.�.�G��!��(�:�.�/�
����*�F���z�?�Q���!�}�M�1��#�
���
�1�
��w�w�z�"�"r!c��|j�}d}|dvrd|z}d}|j�)d}|jrd}||jjz}dt |�j�|�|�dt|��d�S) Nr)r<zmock.z name=%rz spec=%rz spec_set=%r�<z id='z'>)rbrrrr6r8)rPrx�name_string�spec_strings r"r�zNonCallableMock.__repr__�s����&�&�(�����(�(�$�t�+�K������'�$�K��~�~�,��%��(8�(8�(A�(A�A�K����J������t�H�
�
r!c�� tstj|�S|jxsg}t t|��}t
|j�}|jj�D��cgc]\}}|tur|��}}}|D�cgc]}|jd�r�|��}}|D�cgc] }|jd�rt|�r|��"}}tt||z|z|z��Scc}}wcc}wcc}w)Nr#)r�object�__dir__rr!r6rgrlr�rFr;rWr�rE�set)rP�extras� from_type� from_dict�m_name�m_value�from_child_mocks�es r"rizNonCallableMock.__dir__�s���F���>�>�$�'�'��#�#�)�r����T�
�O� �����'� �*.�*=�*=�*C�*C�*E�(�*E��v�w��h�&�
�*E� �(�!*�C� �1����c�1B�Q� � �C� )�#� �1����c�1B��q�\�� � �#��c�&�9�,�y�8�;K�K�L�M�M��(��D��#s�3C3�C9�%C9�/%C>c�`���|tvrtj�||�S�jr6�j�*|�jvr|�j
vrt
d|z��|tvrd|z}t
|��|tvr��j�|�jvrt
d|z��t|�s)tt��|t||��|���fd�}n^t�|d|�tt��||�|�j|<n*|dk(r|�_yt�|||�r|�j|<�j r/t#�|�s#�j%��d|��}t
d|����t'|t(�r|�j
|<ytj�||�S)Nz!Mock object has no attribute '%s'z.Attempting to set unsupported magic method %r.c�����g|��i|��Sr4r )rQ�kwrvrPs ��r"rCz-NonCallableMock.__setattr__.<locals>.<lambda>s���H�T�,G�D�,G�B�,Gr!r-r@zCannot set )r�rh�__setattr__rrrlrE�_unsupported_magicsrVr&rar6�_get_methodr�r�rrr(rbr'r)rPrxr��msg� mock_namervs` @r"ruzNonCallableMock.__setattr__s�����>�!��%�%�d�D�%�8�8��n�n��!3�!3�!?���*�*�*���
�
�%� �!D�t�!K�L�L�
�(�
(�B�T�I�C� ��%�%�
�[�
��!�!�-�$�d�>P�>P�2P�$�%H�4�%O�P�P�$�U�+���T�
�D�+�d�E�*B�C� ��G��&�d�E�4��>���T�
�D�%�0�,1��#�#�D�)�
�[�
�$�D���$�T�5�$��=�,1��#�#�D�)����W�T�4�%8��2�2�4�5�Q�t�f�=�I� �;�y�k�!:�;�;��e�\�*�"'�D�M�M�$����!�!�$��e�4�4r!c��|tvr;|t|�jvr$tt|�|�||jvry|jj|t�}||jvr tt|�j|�n|turt|��|tur
|j|=t|j|<yr4)rVr6rl�delattrr�rm�_missingr�r�__delattr__r;rE)rPrxr-s r"r}zNonCallableMock.__delattr__+s����;��4�4��:�+>�+>�#>��D��J��%��4�=�=�(���!�!�%�%�d�H�5���4�=�=� ����.�:�:�4�@�
�H�_� ��&�&��h���#�#�D�)�$,����D�!r!c�<�|jxsd}t|||�Sr;)r��_format_call_signature�rPrQrRrxs r"�_format_mock_call_signaturez+NonCallableMock._format_mock_call_signature=s�����(�&��%�d�D�&�9�9r!c�p�d}|j||�}|j}|j|�}||||fzS)Nz0expected %s not found.
Expected: %s
Actual: %s)r�r�)rPrQrR�action�message�expected_stringr��
actual_strings r"�_format_mock_failure_messagez,NonCallableMock._format_mock_failure_messageBsF��F���:�:�4��H���N�N� �8��8�8�)�D�
��&�/�=�A�A�Ar!c�"� |s|jSd}|jdd�jd�}|j}|D]K}|j |�}|�t|t�r|St|�}|j}|j}�M|S)Nr&rr@)r�replacerGr�rmr'r:r>)rPrxrS�names�childrenr=s r"�_get_call_signature_from_namez-NonCallableMock._get_call_signature_from_nameJs��� ���'�'�'������T�2�&�,�,�S�1���&�&���D��L�L��&�E��}�
�5�*� =���
� &�e�,�� �/�/���+�+����
r!c�x� t|t�r#t|�dkDr|j|d�}n|j}|�Pt|�dk(rd}|\}}n|\}}} |j
|i|��}t
||j|j�S|S#t$r}|jd�cYd}~Sd}~wwxYw)Nr�rr)r'rhr�r�rrOrrQrR� TypeError�with_traceback)rP�_callrSrxrQrR�
bound_callrqs r"�
_call_matcherzNonCallableMock._call_matcherks��� ��e�U�#��E�
�Q���4�4�U�1�X�>�C��&�&�C��?��5�z�Q����$���f�%*�"��d�F�
.�%�S�X�X�t�6�v�6�
��D�*�/�/�:�3D�3D�E�E��L���
.��'�'��-�-��
.�s� 2B� B9�B4�.B9�4B9c�� |jdk7r<d|jxsd�d|j�d|j���}t|��y)Nr�
Expected 'r<z"' to not have been called. Called � times.�r�r��_calls_repr�AssertionError�rPrxs r"r�z!NonCallableMock.assert_not_called�sN�� ��?�?�a���o�o�/��/��o�o��&�&�(�*�C�!��%�%� r!c�`� |jdk(rd|jxsdz}t|��y)Nrz"Expected '%s' to have been called.r<)r�r�r�r�s r"r�zNonCallableMock.assert_called�s9�� ��?�?�a��7��O�O�-�v�/�C� ��%�%� r!c�� |jdk(s<d|jxsd�d|j�d|j���}t|��y)Nr�r�r<z#' to have been called once. Called r�r�r�s r"r�z"NonCallableMock.assert_called_once�sN�� ����!�#��o�o�/��/��o�o��&�&�(�*�C�!��%�%�$r!c�F���� �j�'�j���}d}d|�d|��}t|�����fd�}�jt ��fd���}�j�j�}||k7r%t|t�r|nd}t|��|�y)Nznot called.z#expected call not found.
Expected: z
Actual: c�,���j���}|Sr4�r��rxrQrRrPs ���r"�_error_messagez:NonCallableMock.assert_called_with.<locals>._error_message�s����3�3�D�&�A�C��Jr!T��two)r�r�r�r��_Callr'� Exception)rPrQrR�expected�actual�
error_messager��causes``` r"r~z"NonCallableMock.assert_called_with�s���� 3��>�>�!��7�7��f�E�H�"�F���)�M� ��/�/� ��%�%�e�T�6�N��&E�F���#�#�D�N�N�3���X�� *�8�Y� ?�H�T�E� ��!1�2��=�r!c�� |jdk(s<d|jxsd�d|j�d|j���}t|��|j|i|��S)Nr�r�r<z' to be called once. Called r�)r�r�r�r�r~�rPrQrRrxs r"r�z'NonCallableMock.assert_called_once_with�sa�� )����!�#��o�o�/��/��o�o��&�&�(�*�C�!��%�%�&�t�&�&��7��7�7r!c ��� |D�cgc]}�j|���}}td�|D�d�}t�fd��jD��}|sv||vrq|�d}n1dj |D�cgc]}t|t�r|nd��c}�}t|�dt|���jd��jd����|�yt|�}g} |D]}
|j|
��| r,t�jxsd �d
t| ��d|�d��|�ycc}wcc}w#t$r| j|
�Y�lwxYw)
Nc3�BK�|]}t|t�s�|���y�wr4�r'r���.0rqs r"� <genexpr>z3NonCallableMock.assert_has_calls.<locals>.<genexpr>������F��A�Z��9�-E�a�����c3�@�K�|]}�j|����y�wr4�r��r��crPs �r"r�z3NonCallableMock.assert_has_calls.<locals>.<genexpr>�s�����M�_��d�0�0��3�_���zCalls not found.z+Error processing expected calls.
Errors: {}�
Expected: z Actual)�prefixr@r<z does not contain all of z in its call list, found z instead)r�r�r�r��formatr'r�r�r��rstriprg�removerGr"r�rh)rP�calls� any_orderr�r�r�� all_calls�problemrq� not_found�kalls` r"r�z NonCallableMock.assert_has_calls�s���� 1�49�9�5�a�D�&�&�q�)�5��9��F��F��M���M�T�_�_�M�M� ���y�(��=�0�G� ,�-3�V�-5�$7�-5��*4�A�y�)A�A�t�$K�-5�$7�.8��%��i� !�!*�5�!1� 2��'�'�z�'�:�A�A�#�F�G�I��� �
���O� �� ��D�
'�� � ��&��
� �&*�o�o�&?��&?�&+�I�&6� �C���
���7:��$7���
'�� � ��&�
'�s�D�,D$�D)�)E�Ec�$� |jt||fd���}t|t�r|nd}|jD�cgc]}|j|���}}|s
|t|�vr!|j
||�}td|z�|�ycc}w)NTr�z%s call not found)r�r�r'r�r��_AnyComparerr�r��rPrQrRr�r�r�r�r�s r"r�zNonCallableMock.assert_any_call�s��� ,�
�%�%�e�T�6�N��&E�F��&�x��;����15�1D�1D�E�1D�A�$�$�$�Q�'�1D��E��H�L��$8�8�"�>�>�t�V�L�O� �#�o�5���
�9��F��B
c�L� |jr,d|vrd|d��nd}|j�|z}t|��|jd�}||jdvrtdi|��St
|�}t|t�r|tvrt
}n�t|t�r0|tvs|jr||jvrt}nTt
}nMt|t�s.t|t�rt}n&t|t�rt }n|j"d}di|��S)Nrxr@r&r�r r�r )rrbrErmrlr
r6r5r�_async_method_magicsr��_all_sync_magicsr�
CallableMixinr
rrrk)rPrtrcryr��_type�klasss r"r(zNonCallableMock._get_child_mocks �� !����,2�b�L�!�B�v�J�<�(�d�I��/�/�1�I�=�I� ��+�+��F�F�;�'� ���
�
�n�5�5��?�r�?�"��T�
���e�Y�'�I�9M�,M��E�
��~�
.��-�-��&�&�9��8J�8J�+J�!��!���E�=�1��%�!5�6�!���E�?�3����M�M�!�$�E��{�r�{�r!c�V� |jsyd|�dt|j��d�S)Nr�
z: r@)r�r)rPr�s r"r�zNonCallableMock._calls_repr's2�� ������F�8�2�i����8�9��;�;r!)NNNNNNrNFNF�F)FFr4)r)�Calls)/rrrrrYr�rArrr�"_NonCallableMock__get_return_value�"_NonCallableMock__set_return_value�"_NonCallableMock__return_value_docr�r�r-r�r�r�r�r�r��!_NonCallableMock__get_side_effect�!_NonCallableMock__set_side_effectr��boolr�rr�rbr�rirur}r�r�r�r�r�r�r�r~r�r�r�r(r�r r!r"rr�s`��*�
�G�E�=A�EI�<A��(>B�EI�<A�*
�Z'�,�@E�!&�0�B
�;�M���.�0B�.�0�L�� �� �
"�(�
+�F�%�l�3�J�$�[�1�I�)�*:�;�N�%�l�3�J� �*��,�.?�@�K�$�(-�',�$�!%�$� $�$�@%�,-�`#�6
�*N�$'5�T-�$:�
B��B�6&�&�&�>�, 8�*�Z
� #�L
<r!r�assert_c��eZdZ d�Zy)r�c �x�|D]/}tt||�D��cgc]
\}}||k(��c}}�s�/yycc}}w)NTF)�all�zip)rP�itemr�r�r�s r"r�z_AnyComparer.__contains__AsO���E��(+�D�%�(8��(8�$�H�f��F�"�(8����
���s�6N)rrrr�r r!r"r�r�<s���r!r�c�x�|�|St|�r|St|�r|S t|�S#t$r|cYSwxYwr4)r9rer�r�r,s r"r4r4LsJ��
�{��
��S���
���~��
���C�y������
��s�
+�9�9c
�F�eZdZddedddddddf
d�Zd�Zd�Zd�Zd�Zd�Z y) r�Nrc
��||jd<tt|�j||||||| |
fi|��||_y)Nr�)rlr�r�rAr�)rPr�r�r�rrxr�r�r�r�rrRs r"rAzCallableMixin.__init__]sN��/;��
�
�*�+�1��M�4�(�1�1��%��x����K�
�39�
�
'��r!c��yr4r r�s r"rWzCallableMixin._mock_check_sigis��r!c�n�|j|i|��|j|i|��|j|i|��Sr4)rW�_increment_mock_call�
_mock_callr�s r"rDzCallableMixin.__call__nsD�� ����d�-�f�-�!��!�!�4�2�6�2��t����/��/�/r!c�&�|j|i|��Sr4)�_execute_mock_callr�s r"r�zCallableMixin._mock_callvs��&�t�&�&��7��7�7r!c���d|_|xjdz
c_t||fd��}||_|jj|�|jdu}|j}|j}|dk(}|jjtd||f��|j}|��|rI|jjt|||f��|jdu}|r|jdz|z}t|||f�} |jj| �|jr(|rd}
nd}
|jdk(}|j|
z|z}|j}|���yy)NTr�r�r&rr@)r�r�r�r�r�r"r�r�r�r�r�r�)rPrQrRr��do_method_calls�method_call_name�mock_call_name� is_a_callr�this_mock_callr`s r"r�z"CallableMixin._increment_mock_callyso��������1���
�t�V�n�$�/��������"�"�5�)��+�+�4�7���?�?���,�,��"�d�*� ������u�b�$��%7�8�9��+�+���%���(�(�/�/��7G��v�6V�0W�X�"-�":�":�$�"F��"�'2�'=�'=��'C�FV�'V�$�#�N�D�&�#A�B�N��"�"�)�)�.�9��)�)���C��C�'�6�6�$�>� �!,�!;�!;�c�!A�N�!R��&�6�6�K�-�%r!c��|j}|�Bt|�r|�t|�st|�}t|�r
|�||i|��}|tur|S|j
tur|jS|jr(|jjtur|jS|j�|j|i|��S|jSr4) r�r9rer�rr�r�r�r )rPrQrR�effectrws r"r�z CallableMixin._execute_mock_call�s����!�!�����V�$����v�&��f��� ��(� �L���0��0���W�$��
��"�"�'�1��$�$�$����4�#6�#6�#C�#C�7�#R��$�$�$����'�#�4�#�#�T�4�V�4�4�� � � r!)
rrrrrArWrDr�r�r�r r!r"r�r�[s8�� �d���$��d�!�R�T� '�
�
0�8�,7�\!r!r�c��eZdZy)rNrr r!r"rr�s��7r!rc�:�d}|D]}||vs�t|�d���y)N)� autospect� auto_spec�set_specz5 might be a typo; use unsafe=True if this is intended)�RuntimeError)�kwargs_to_check�typos�typos r"�_check_spec_arg_typosr�s1��2�E����?�"���(�O�P��
�r!c��eZdZdZgZdd�d�Zd�Zd�Zd�Ze jd��Zd �Zd
�Z
d�Zd�Zd
�Zd�Zd�Zy)�_patchNF�rc
�p�|� |turtd��|�td��|
st| �t|�rt d|�d|�d���t|�rt d|�d|�d���||_||_||_||_||_ ||_
d|_||_||_
| |_g|_y)Nz,Cannot use 'new' and 'new_callable' togetherz1Cannot use 'autospec' and 'new_callable' togetherzCannot spec attr z0 as the spec has already been mocked out. [spec=rz? as the spec_set target has already been mocked out. [spec_set=F)rrGr�r&r�getterrcr�new_callabler��create� has_localr��autospecrR�additional_patchers)rPr�rcrr�r�r�rr�rRrs r"rAz_patch.__init__s����#��'�!� �B����#� �G����!�&�)��T�"�"�#�I�=�16�6:�X�Q�@�A�
A��X�&�"�#�I�=�1A�AI��A�O�P�
P����"������(����� ������� ��
� ��
����#%�� r!c�f�t|j|j|j|j|j
|j|j|j|j� }|j|_
|jD�cgc]}|j���c}|_|Scc}wr4)
r�r�rcrr�r�r�rr�rR�attribute_namer�copy)rP�patcher�ps r"rz_patch.copy6s�����K�K�������4�9�9��K�K�����M�M�4�,�,�d�k�k�
��
"&�!4�!4���"�6�6�'
�6��A�F�F�H�6�'
��#����'
s�
B.c��t|t�r|j|�Stj|�r|j|�S|j
|�Sr4�r'r6�decorate_classr*r�decorate_async_callable�decorate_callable)rPr1s r"rDz_patch.__call__CsM���d�D�!��&�&�t�,�,��&�&�t�,��/�/��5�5��%�%�d�+�+r!c���t|�D]^}|jtj�s�#t ||�}t|d�s�<|j
�}t||||���`|S�NrD)r!rWr�TEST_PREFIXr)r(rra)rPr�r��
attr_valuers r"r z_patch.decorate_classKsa����J�D��?�?�5�#4�#4�5�� ���-�J��:�z�2���i�i�k�G��E�4���!4�5���r!c#�RK�g}tj�5}|jD]U}|j|�}|j�|j|��2|jtus�E|j|��W|t|�z
}||f��ddd�y#1swYyxYw�wr4)
�
contextlib� ExitStack� patchings�
enter_contextr�updaterrr"rh)rP�patchedrQ�keywargs�
extra_args�
exit_stack�patchingrIs r"�decoration_helperz_patch.decoration_helperYs������
�
�
!�
!�
#�z�#�-�-�� �.�.�x�8���*�*�6��O�O�C�(��\�\�W�,��%�%�c�*�.�
�E�*�%�%�D���"�"�$�
#�
#�s#�B'�AB�+'B� B'�B$� B'c�����t�d�r�jj���St�����fd����g�_�S)Nrc�l���j�||�5\}}�|i|��cddd�S#1swYyxYwr4�r�rQr�newargs�newkeywargsr1rrPs ���r"rz)_patch.decorate_callable.<locals>.patchedns=����'�'��(,�(0�2�5K�g�{��W�4��4�2�2�2�s�*�3�r(rr"r�rPr1rs``@r"rz_patch.decorate_callablehsK����4��%��N�N�!�!�$�'��K� �t�� 5�
� 5�"�F����r!c�����t�d�r�jj���St�����fd����g�_�S)Nrc���K��j�||�5\}}�|i|���d{���cddd�S7�
#1swYyxYw�wr4rrs ���r"rz/_patch.decorate_async_callable.<locals>.patchedsN������'�'��(,�(0�2�5K�g�{�!�7�:�k�:�:�2�2�;��2�2�s#�A�6�4�6�
A�6�?�Ar"r#s``@r"r
z_patch.decorate_async_callableysK����4��%��N�N�!�!�$�'��K� �t�� ;�
� ;�"�F����r!c�H�|j�}|j}t}d} |j|}d}|tvrt|t�rd|_
|js|turt |�d|����||fS#tt
f$rt
||t�}Y�iwxYw)NFTz does not have the attribute )r�rcrrlrE�KeyErrorr)� _builtinsr'rr�)rP�targetrxrv�locals r"�get_originalz_patch.get_original�s���������~�~������ ����t�,�H��E��9���F�J�!?��D�K��{�{�x�7�2� �7=�t�D��
��������)� 6��v�t�W�5�H� 6�s�A>�> B!� B!c�� |j|j|j}}}|j|j}}|j
}|j
�|_|durd}|durd}|durd}|�
|�td��|�|�|dvrtd��|j�\}}|tu�rl|��id} |dur|}|dur|}d}n|� |dur|}d}n|dur|}|�|�%|turtd��t|t�rd} |�|}
nb|�t|�rt}
nN|�|�D|}|�|}t|�rd|v}nt!|�}t|�rt}
n|rt"}
n
t$}
nt$}
i}
|�||
d<|�||
d <t|
t�r+t'|
t(�r|j*r|j*|
d
<|
j-|�|
di|
��}| �rFt/|��r:|}|�|}t|�st1|�st"}
|
j3d
�|
d|dd�|
��|_n�|��|turtd
��|turtd��t7|�}|dur|}t/|j�r)t9d|j*�d|j�d|�d���t/|�rMt;|jd|j�}t9d|j*�d|�d|j�d|�d� ��t=|f||j*d�|��}n
|rtd��|}||_||_ tCjD�|_# tI|j|j*|�|jJ�ui}|jtur|||jJ<|jLD]A}|jFjO|�}|jtus�1|j-|��C|S|S#|jPtSjT��s�YyxYw)NFzCan't specify spec and autospec)TNz6Can't provide explicit spec_set *and* spec or autospecTz!Can't use 'spec' with create=TruerDr�r�rxr&r'zBautospec creates the mock for you. Can't specify autospec and new.z%Can't use 'autospec' with create=TruerRz: as the patch target has already been mocked out. [target=rUrrrSrT)r��_namez.Can't pass kwargs to a mock we aren't creatingr )+rr�r�rrRr�r�r)r�r+rr'r6r.r
rir/r
rr5rrcrr&rorHr�r�rr)r �
temp_original�is_localrr�_exit_stackrarrr�__exit__�sys�exc_info)rPrr�r�rrRr�rvr*�inherit�Klass� this_spec�not_callable�_kwargsrZ�new_attrrrrIs r"� __enter__z_patch.__enter__�st�� �"�h�h�� � �4�=�=�8�T���=�=�$�+�+�&���(�(���k�k�m����5�=��D��u���H��u���H���� 4��=�>�>�
�
��!5��L�(��T�U�U��+�+�-���%��'�>�h�.��G��t�|����t�#�'�H��D��!��t�#�#�H��D��T�!�#����8�#7��w�&�#�$G�H�H��h��-�"�G��'�$����-��"9�!���!�X�%9� � ��'� (�I��I�&�#-�Y�#>�L�'/� �':�#:�L� ��+�%�E�!�0�E�%�E�!���G���"&�����#�&.��
�#��5�$�'��5�/�2�t�~�~�"&�.�.�����N�N�6�"��"�'�"�C��,�S�1�!� ��'� (�I� ��+�&�y�1�0�E����F�#�#(�$4�S�D�$4�+2�$4�� �
�
!��'�!��(����7�"�� G�H�H��H�~�H��4��#�� ����-�&�+�D�N�N�+=�>�#�{�{�o�W�X�L��C�D�D�!��*�%�d�k�k�:�t�{�{�K��&�+�D�N�N�+=�]�"�o�&�#�{�{�o�W�X�L��C�D�D�
"�(�B�X�(,���B�:@�B�C�
��L�M�M���%�����
�%�/�/�1��� ��D�K�K�����:��"�"�.��
��8�8�w�&�7:�J�t�2�2�3� $� 8� 8�H��*�*�8�8��B�C��|�|�w�.�"�)�)�#�.�!9�"�!��J�� � �4�=�=�#�,�,�.�1��2�s�;BO�O�O�$Pc��� |jr>|jtur,t|j|j
|j�n�t
|j|j
�|jsYt|j|j
�r|j
dvr+t|j|j
|j�|`|`|`|j}|` |j|�S)N)r]rr_�__annotations__r`)r/r.rrar)rcr{r�r(r0r1)rPr3rs r"r1z_patch.__exit__8s�����=�=�T�/�/�w�>��D�K�K�����1C�1C�D��D�K�K����0��;�;�����T�^�^�(L����+=�=�����T�^�^�T�5G�5G�H����M��K��%�%�
���"�z�"�"�H�-�-r!c�^� |j�}|jj|�|Sr4)r:�_active_patchesr"�rPrws r"�startz_patch.startMs*��;����!�����#�#�D�)��
r!c�� |jj|�|jddd�S#t$rYywxYwr4)r>r�rGr1r�s r"�stopz_patch.stopTsG��#� �� � �'�'��-�
�}�}�T�4��.�.�� � �� �s�1� =�=)rrrrr>rArrDr r�contextmanagerrrr
r+r:r1r@rBr r!r"r�r�sg���N��O�AF�"&�J
�,�����#��#��"�"�0T�l.�*�/r!r�c�� |jdd�\}}t t
j|�|fS#tttf$rtd|����wxYw)Nr@r�z,Need a valid target to patch. You supplied: )�rsplitr�rGrEr�pkgutil�resolve_name)r)rcs r"�_get_targetrH`sj��G�"�M�M�#�q�1��� ��7�'�'��0�)�;�;��
�z�>�2�G��:�6�*�E�G� G�G�s �3�#Ar�c�x�� t��turt��d����fd�}
t|
|||||||| |��
S)Nz3 must be the actual object to be patched, not a strc����Sr4r �r)s�r"rCz_patch_object.<locals>.<lambda>s���Vr!r�)r6�strr�r�)r)rcrr�r�r�rr�rrRr�s` r"�
_patch_objectrMisX���
��F�|�s����j�K�L�
�
��F��� �3��f��(�L�&���r!c��� t��turttj��}n�fd�}|std��t
|j��}|d\} }
t|| |
|||||i� }| |_ |ddD]:\} }
t|| |
|||||i� }| |_ |jj|��<|S)Nc����Sr4r rKs�r"rCz!_patch_multiple.<locals>.<lambda>�s���r!z=Must supply at least one keyword argument with patch.multiplerr�)r6rLrrFrGrGrgrFr�rrr")
r)r�r�r�rr�rRr�rFrcrr�this_patchers
` r"�_patch_multiplerQ�s�����(�F�|�s����-�-�v�6������K�
�
�
����� �E��1�X�N�I�s��� �3��f�h��,���G�'�G�����)�� �3���I�s�D�&�(��l�B�
��'0��#��#�#�*�*�<�8�
$��Nr!c�J� t|�\} }
t| |
||||||||��
S)Nr�)rHr�)r)rr�r�r�rr�rrRr�rcs r"rr�s=��F�N$�F�+��F�I��� �3��f��(�L�&���r!c�R�eZdZ d
d�Zd�Zd�Zd�Zd�Zd�Zd�Z d�Z
d �Zd
�Zd�Z
y)�_patch_dictc��||_t|�|_|jj|�||_d|_yr4)�in_dict�dictr9r�clear� _original)rPrVr9rXrRs r"rAz_patch_dict.__init__&s4������6�l��������6�"���
���r!c��t|t�r|j|�Stj|�r|j|�S|j
|�Sr4r)rP�fs r"rDz_patch_dict.__call__/sM���a����&�&�q�)�)��&�&�q�)��/�/��2�2��%�%�a�(�(r!c�2���t����fd��}|S)Nc����j� �|i|���j�S#�j�wxYwr4�rT�
_unpatch_dict�rQrtr[rPs ��r"�_innerz-_patch_dict.decorate_callable.<locals>._inner8s8�������
%��$�~�"�~��"�"�$���"�"�$�s�+�=�r�rPr[ras`` r"rz_patch_dict.decorate_callable7� ��� �q�� %�
� %��
r!c�2���t����fd��}|S)Nc���K��j� �|i|���d{����j�S7�#�j�wxYw�wr4r^r`s ��r"raz3_patch_dict.decorate_async_callable.<locals>._innerDsD���������
%���^��^�+��"�"�$�,���"�"�$�s%�A�7�5�7�A�7�A � Arbrcs`` r"r
z#_patch_dict.decorate_async_callableCrdr!c��t|�D]{}t||�}|jtj�s�/t|d�s�<t
|j|j|j�}||�}t|||��}|Sr
)r!r)rWrrr(rTrVr9rXra)rPr�r�r� decorator� decorateds r"r z_patch_dict.decorate_classOso����J�D� ���-�J����� 1� 1�2���Z�0�'����d�k�k�4�:�:�N� �%�j�1� ���t�Y�/�
��r!c�<� |j�|jSr4)rTrVr�s r"r:z_patch_dict.__enter__Zs��������|�|�r!c��|j}t|jt�r$t j
|j�|_|j}|j} |j�}||_ |rt|� |j|�y#t$ri}|D]
}||||<�Y�CwxYw#t$r|D]
}||||<�YywxYwr4)r9r'rVrLrFrGrXrrErY�_clear_dictr)rPr9rVrXrvrDs r"rTz_patch_dict._patch_dict`s��������d�l�l�C�(�"�/�/����=�D�L��,�,���
�
�� -��|�|�~�H�"������ � +��N�N�6�"��� -��H��� '�����
�� -��� +���%�c�{����� +�s$�$B� B;�B8�7B8�;C�Cc��|j}|j}t|� |j|�y#t$r|D]
}||||<�YywxYwr4)rVrYrlrrE)rPrVrvrDs r"r_z_patch_dict._unpatch_dict|sS���,�,���>�>���G�� -��N�N�8�$��� -���'��}���� � -�s�7�A�Ac�>� |j�|j�y�NF)rYr_)rPrQs r"r1z_patch_dict.__exit__�s����>�>�%���� �r!c�f� |j�}tjj|�|Sr4)r:r�r>r"r?s r"r@z_patch_dict.start�s*��;����!�����%�%�d�+��
r!c�� tjj|�|j ddd�S#t$rYywxYwr4)r�r>r�rGr1r�s r"rBz_patch_dict.stop�sG��#� ��"�"�)�)�$�/�
�}�}�T�4��.�.�� � �� �s�5� A�AN)r F)rrrrArDrr
r r:rTr_r1r@rBr r!r"rTrT s>���8�)� � ���+�8
-���/r!rTc�n� |j�y#t$rt|�}|D]}||=�YywxYwr4)rXrErg)rV�keysrDs r"rlrl�s9����
�
������G�}���C������s��4�4c�b� ttj�D]}|j��yr4)r\r�r>rB)rs r"�_patch_stopallru�s#��A��&�0�0�1��
�
�
��2r!�testz�lt le gt ge eq ne getitem setitem delitem len contains iter hash str sizeof enter exit divmod rdivmod neg pos abs invert complex int float index round trunc floor ceil bool next fspath aiter zDadd sub mul matmul truediv floordiv mod lshift rshift and xor or pow� c#�&K�|] }d|z���y�w)zi%sNr �r��ns r"r�r��s����7�&6��5�1�9�&6���c#�&K�|] }d|z���y�w)zr%sNr rys r"r�r��s����5�$4�q����$4�r{>ri�__get__�__set__r��
__delete__�
__format__r��__missing__�__getstate__�__reversed__�__setstate__�
__getformat__�
__reduce_ex__�__getnewargs__�__subclasses__�__getinitargs__�__getnewargs_ex__c�"�� �fd�}||_|S)Nc����|g|��i|��Sr4r )rPrQrtr1s �r"�methodz_get_method.<locals>.method�s����D�&�4�&�2�&�&r!)r)rxr1r�s ` r"rwrw�s���@�'��F�O��Mr!r�>� __aexit__� __anext__�
__aenter__� __aiter__>�__del__r�rAr��__prepare__ru�__instancecheck__�__subclasscheck__c�,�tj|�Sr4)rh�__hash__r�s r"rCrC�s
��V�_�_�T�2r!c�,�tj|�Sr4)rh�__str__r�s r"rCrC�s
��F�N�N�4�0r!c�,�tj|�Sr4)rh�
__sizeof__r�s r"rCrC�s��v�0�0��6r!c�j�t|�j�d|j��dt|���S)N�/)r6rrbr8r�s r"rCrC�s3��$�t�*�"5�"5�!6�a��8O�8O�8Q�7R�RS�TV�W[�T\�S]�^r!)r�r�r��
__fspath__r�y�?g�?)
�__lt__�__gt__�__le__�__ge__�__int__r��__len__r1�__complex__� __float__�__bool__� __index__r�c����fd�}|S)Nc�Z���jj}|tur|S�|urytSr@)�__eq__r�r�NotImplemented)�other�ret_valrPs �r"r�z_get_eq.<locals>.__eq__s/����+�+�0�0���'�!��N��5�=���r!r )rPr�s` r"�_get_eqr�s�����Mr!c����fd�}|S)Nc�^���jjturtS�|urytSro)�__ne__r�rr�)r�rPs �r"r�z_get_ne.<locals>.__ne__s*����;�;�)�)��8��N��5�=���r!r )rPr�s` r"�_get_ner�s�����Mr!c����fd�}|S)Nc�l���jj}|turtg�St|�Sr4)�__iter__r�rr��r�rPs �r"r�z_get_iter.<locals>.__iter__#s/����-�-�2�2���g����8�O��G�}�r!r )rPr�s` r"� _get_iterr�"s�����Or!c����fd�}|S)Nc����jj}|turtt g��Stt |��Sr4)r�r�r�_AsyncIteratorr�r�s �r"r�z"_get_async_iter.<locals>.__aiter__-s8����.�.�3�3���g��!�$�r�(�+�+��d�7�m�,�,r!r )rPr�s` r"�_get_async_iterr�,s���-�
�r!)r�r�r�r�c���tj|t�}|tur||_ytj|�}|�||�}||_yt
j|�}|�||�|_yyr4)�_return_valuesrmrr��_calculate_return_value�_side_effect_methodsr�)r<r�rx�fixed�return_calculatorr��
side_effectors r"�_set_return_valuer�=s{�����t�W�-�E��G��#����/�3�3�D�9���$�(��.��*����(�,�,�T�2�M�� �*�4�0���!r!c��eZdZd�Zd�Zy)�
MagicMixinc��|j�tt|�j|i|��|j�yr4)�_mock_set_magicsr�r�rA)rPrQrts r"rAzMagicMixin.__init__Ps6������.��J��%�.�.��;��;����r!c �z�ttz}|}t|dd��U|j|j�}t�}||z
}|D]&}|t
|�jvs�t||��(|tt
|�j�z
}t
|�}|D]}t||t||���y)Nr)�_magicsr�r)�intersectionrrjr6rlr{ra�
MagicProxy)rP�orig_magics�these_magics�
remove_magicsrBr�s r"r�zMagicMixin._mock_set_magicsVs���� 4�4��"���4��$�/�;�&�3�3�D�4F�4F�G�L��E�M�'�,�6�M�&���D��J�/�/�/��D�%�(�'�$�c�$�t�*�*=�*=�&>�>���T�
��!�E��E�5�*�U�D�"9�:�"r!N)rrrrAr�r r!r"r�r�Os�� �;r!r�c��eZdZ dd�Zy)r
c�J� |j||�|j�yr4�rr�rs r"rz"NonCallableMagicMock.mock_add_specp�&�� N�
���D�(�+����r!Nr�)rrrrr r!r"r
r
ns
��7� r!r
c��eZdZy)�AsyncMagicMixinNrr r!r"r�r�zs��r!r�c�4��eZdZ dd�Zdd�def�fd�Z�xZS)rFc�J� |j||�|j�yr4r�rs r"rzMagicMock.mock_add_spec�r�r!)r�r�c���|r#|jrt|j�rd}t�j|d|i|��y)NFr�)r�r��superr�)rPr�rQrRr-s �r"r�zMagicMock.reset_mock�s<��������$�/�/�*�
!�L������D�F�|�F�v�Fr!r�)rrrrr�r��
__classcell__�r-s@r"rr~s&��� � �9>�
G��
G�
Gr!rc� �eZdZd�Zd�Zdd�Zy)r�c� �||_||_yr4�rxr�)rPrxr�s r"rAzMagicProxy.__init__�s���� ���r!c��|j}|j}|j|||��}t|||�t |||�|S)N)rxr�r)rxr�r(rar�)rPrBr��ms r"�create_mockzMagicProxy.create_mock�sM��� � �������"�"���/5�
#�
7�����q�!��&�!�U�+��r!Nc�"�|j�Sr4)r�)rPr-r�s r"r}zMagicProxy.__get__�s�����!�!r!r4)rrrrAr�r}r r!r"r�r��s����"r!r�c���eZdZed�Zed�Zed�Z�fd�Zd�Zd�Z d�Z
d�Zd �Zd
�Z
dd�Zd�Z�fd
�Z�xZS)r�r�r�r�c����t�j|i|��tjj|j
d<d|j
d<d|j
d<t
�|j
d<tr7tt��}t|j
d<t|j
d<ntt��}tjtjztjz|_d|_d |_d|_d|_||j
d
<d|j
d<t)�|j
d
<i|j
d<d|j
d<y)Nr�r�_mock_await_count�_mock_await_args�_mock_await_args_list�r�rr)rQrRr0r
rr_r`r<)r�rAr�r�r�rlr�� _CODE_SIGr�_CODE_ATTRSrr*�CO_COROUTINE�
CO_VARARGS�CO_VARKEYWORDS�co_flags�co_argcount�co_varnames�co_posonlyargcount�co_kwonlyargcountrh)rPrQrR� code_mockr-s �r"rAzAsyncMockMixin.__init__�s6��������$�)�&�)�*1�);�);�)I�)I��
�
�o�&�-.��
�
�)�*�,0��
�
�(�)�1:���
�
�-�.��'��=�I�08�I���}�-�4=�I���0�1�'��:�I�� � �� � �
!��$�$�
%� ��
!"� �� 2� ��'(� �$�&'� �#�$-��
�
�j�!�$/��
�
�j�!�(-���
�
�n�%�*,��
�
�&�'�+/��
�
�'�(r!c��K�t||fd��}|xjdz
c_||_|jj |�|j
}|�_t
|�r|�t|�s t|�}t
|�r&|�t|�r||i|���d{���}n||i|��}|tur|S|jtur|jS|j�At|j�r|j|i|���d{���S|j|i|��S|jS#t$rt�wxYw7��7�7�w)NTr�r�)r�r�r�r�r"r�r9rer��
StopIteration�StopAsyncIterationrrr�r�r )rPrQrRr�r�rws r"r�z!AsyncMockMixin._execute_mock_call�sT�����t�V�n�$�/�����A���������#�#�E�*��!�!�����V�$����v�&�-�!�&�\�F�
!��(� �L�$�V�,�%�t�6�v�6�6����0��0���W�$��
��"�"�'�1��$�$�$����'�"�4�#3�#3�4�-�T�-�-�t�>�v�>�>�>�#�4�#�#�T�4�V�4�4�� � � ��-%�-�-�,�-��7��?�s=�A-E�0D-�;#E�E�A+E�
E�"E�-D=�=E�Ec�b� |jdk(rd|jxsd�d�}t|��y)Nr� Expected r<z to have been awaited.�r�r�r�r�s r"r�zAsyncMockMixin.assert_awaited s@�� ����q� ��d�o�o�7��8�8N�O�C� ��%�%�!r!c�|� |jdk(s,d|jxsd�d|j�d�}t|��y�Nr�r�r<z$ to have been awaited once. Awaited r�r�r�s r"r�z"AsyncMockMixin.assert_awaited_once sR�� ����1�$��t���8�&�9�:�#�/�/�0��9�C� ��%�%�%r!c�:���� �j�!�j���}td|�d������fd�}�jt ��fd���}�j�j�}||k7r%t|t�r|nd}t|��|�y)NzExpected await: z
Not awaitedc�0���j��d��}|S)N�await)r�r�r�s ���r"r�z:AsyncMockMixin.assert_awaited_with.<locals>._error_message s����3�3�D�&��3�Q�C��Jr!Tr�)r�r�r�r�r�r'r�)rPrQrRr�r�r�r�s``` r"r�z"AsyncMockMixin.assert_awaited_with s���� ��?�?�"��7�7��f�E�H� �#3�H�:�]�!K�L�L� ��%�%�e�T�6�N��&E�F���#�#�D�O�O�4���X�� *�8�Y� ?�H�T�E� ��!1�2��=�r!c�� |jdk(s,d|jxsd�d|j�d�}t|��|j|i|��Sr�)r�r�r�r�r�s r"r�z'AsyncMockMixin.assert_awaited_once_with) se�� ����1�$��t���8�&�9�:�#�/�/�0��9�C� ��%�%�'�t�'�'��8��8�8r!c�$� |jt||fd���}t|t�r|nd}|jD�cgc]}|j|���}}|s
|t|�vr!|j
||�}td|z�|�ycc}w)NTr�z%s await not found)r�r�r'r�r�r�r�r�r�s r"r�zAsyncMockMixin.assert_any_await4 s��� ��%�%�e�T�6�N��&E�F��&�x��;����15�1E�1E�F�1E�A�$�$�$�Q�'�1E��F��H�L��$8�8�"�>�>�t�V�L�O� �$��6���
�9��Gr�c �B�� |D�cgc]}�j|���}}td�|D�d�}t�fd��jD��}|sb||vr]|�d}n1dj |D�cgc]}t|t�r|nd��c}�}t|�dt|��d�j���|�yt|�}g} |D]}
|j|
��| rtt| ��d��|�ycc}wcc}w#t$r| j|
�Y�XwxYw)Nc3�BK�|]}t|t�s�|���y�wr4r�r�s r"r�z3AsyncMockMixin.assert_has_awaits.<locals>.<genexpr>N r�r�c3�@�K�|]}�j|����y�wr4r�r�s �r"r�z3AsyncMockMixin.assert_has_awaits.<locals>.<genexpr>O s�����S�>R��t�1�1�!�4�>R�r�zAwaits not found.z,Error processing expected awaits.
Errors: {}r�z
Actual: z not all found in await list)
r�r�r�r�r�r'r�r�rgr�rGr"rh)rPr�r�r�r�r��
all_awaitsr�rqr�r�s` r"r�z AsyncMockMixin.assert_has_awaitsA sa���
�49�9�5�a�D�&�&�q�)�5��9��F��F��M���S�d�>R�>R�S�S�
���z�)��=�1�G� ,�-3�V�-5�$7�-5��*4�A�y�)A�A�t�$K�-5�$7�.8��%��i� !�!*�5�!1� 2�3�#�3�3�4�6��� �
��*�%�
�� ��D�
'��!�!�$�'��
� �49�)�4D�F���
���7:��$7���
'�� � ��&�
'�s�C7�,C<� D�D�Dc�|� |jdk7r,d|jxsd�d|j�d�}t|��y)Nrr�r<z# to not have been awaited. Awaited r�r�r�s r"r�z!AsyncMockMixin.assert_not_awaitedm sR�� ����q� ��t���8�&�9�:�#�/�/�0��9�C� ��%�%�!r!c�v�� t�j|i|��d|_d|_t �|_y�Nr)r�r�r�r�r�r�)rPrQrRr-s �r"r�zAsyncMockMixin.reset_mockv s:��� � �����D�+�F�+�������(�{��r!r�)rrrr�r�r�r�rAr�r�r�r�r�r�r�r�r�r�r�s@r"r�r��s\���&�}�5�K�%�l�3�J�*�+<�=�O�0�B&!�P&�&�>�$ 9��*�X&�+�+r!r�c��eZdZy)r
Nrr r!r"r
r
� s��'r!r
c� �eZdZ d�Zd�Zd�Zy)�_ANYc��yr@r �rPr�s r"r�z_ANY.__eq__� s��r!c��yror rs r"r�z_ANY.__ne__� s��r!c��y)Nz<ANY>r r�s r"r�z
_ANY.__repr__� s��r!N)rrrr�r�r�r r!r"r
r
� s��8���r!r
c ��d|z}d}dj|D�cgc]
}t|���c}�}dj|j�D��cgc]\}}|�d|����c}}�} |r|}| r|r|dz
}|| z
}||zScc}wcc}}w)Nz%s(%%s)rz, �=)r]�reprrF)
rxrQrRr��formatted_argsrI�args_stringrDr��
kwargs_strings
r"rr� s����$��G��N��)�)�$�7�$�3�T�#�Y�$�7�8�K��I�I�17�����1?�:�3��3������M��$�����d�"�N��-�'���^�#�#��8��s�A>�B
c��eZdZ d
d�Z dd�Zd�ZejZd�Zd�Z d�Z
d�Zed ��Z
ed
��Zd�Zd�Zy)r�Nc�n�d}i}t|�}|dk(r|\}}}nh|dk(r2|\} }
t| t�r| }t|
t�r|
}n9|
}n6| |
}}n1|dk(r,|\}t|t�r|}nt|t�r|}n|}|rtj |||f�Stj ||||f�S)Nr �r�r�)r�r'rLrhr�)r�r�rxr�r�� from_kallrQrR�_len�first�seconds r"r�z
_Call.__new__� s��������5�z���1�9�!&��D�$��
�Q�Y�!�M�E�6��%��%����f�e�,�!�D�#�F�$�f�f��
�Q�Y��F�E��%��%����E�5�)�������=�=��t�V�n�5�5��}�}�S�4��v�"6�7�7r!c�.�||_||_||_yr4)r�r��_mock_from_kall)rPr�rxr�r�rs r"rAz_Call.__init__
s�����"���(��r!c�"� t|�}d}t|�dk(r|\}}n|\}}}t|dd�r't|dd�r|j|jk7ryd}|dk(rdi}}n�|dk(r|\}}}nv|dk(r5|\} t| t�r| }i}nXt| t�r| }di}}nAd}| }n<|dk(r6|\}
}t|
t�r|
}t|t�r|i}}nd|}}n|
|}}ny|r||k7ry||f||fk(S#t$r tcYSwxYw) Nrr�r�Frr rr�)r�r�r�r)r�r'rhrL)rPr�� len_other� self_name� self_args�self_kwargs�
other_name�
other_args�other_kwargsr�rrs r"r�z_Call.__eq__
sV�� "��E�
�I�� ��t�9��>�%)�"�I�{�04�-�I�y�+��D�.�$�/�G�E�>�SW�4X��%�%��);�);�;���
���>�')�2��J�
�!�^�38�0�J�
�L�
�!�^��F�E��%��'�"�
�!���E�3�'�"�
�+-�r�L�
��
�$��
�!�^�!�M�E�6��%��%�"�
��f�e�,�/5�r��J�/1�6��J�+0�&�L�
����y�0���L�)�i��-E�E�E��_� "�!�!� "�s�C<�<D�
Dc��|j�td||fd��S|jdz}t|j||f||��S)Nrr&r�r��r�r�r�s r"rDz_Call.__call__?
sH���?�?�"��"�d�F�+�$�7�7�����%���d�o�o�t�V�4�4��M�Mr!c�r�|j�
t|d��S|j�d|��}t||d��S)NF)rxrr@)rxr�rr')rPr�rxs r"r�z_Call.__getattr__G
s6���?�?�"��d�e�4�4��/�/�4�0���$�t�u�=�=r!c�^�|tjvrt�tj||�Sr4)rhrlrE�__getattribute__)rPr�s r"r*z_Call.__getattribute__N
s'���5�>�>�!� � ��%�%�d�D�1�1r!c�D�t|�dk(r |\}}||fS|\}}}||fS)Nr�)r�r�s r"�_get_call_argumentsz_Call._get_call_argumentsT
s:���t�9��>��L�D�&��V�|��"&��D�$���V�|�r!c�(�|j�dSr�r,r�s r"rQz
_Call.args\
����'�'�)�!�,�,r!c�(�|j�dS)Nr�r.r�s r"rRz_Call.kwargs`
r/r!c��|js(|jxsd}|jd�rd|z}|St|�dk(rd}|\}}n'|\}}}|sd}n|jd�sd|z}nd|z}t |||�S)Nrr&zcall%sr�zcall.%s)rr�rWr�r)rPrxrQrRs r"r�z_Call.__repr__d
s����#�#��?�?�,�f�D����t�$��$����K��t�9��>��D��L�D�&�!%��D�$������_�_�T�*� �4�'���$���%�d�D�&�9�9r!c�� g}|}|�,|jr|j|�|j}|��,tt |��Sr4)rr"r�r�r\)rP�vals�things r"� call_listz_Call.call_listy
sR�� ��������$�$����E�"��&�&�E�����$��(�(r!)r rNFT)r NNFT)rrrr�rAr�rhr�rDr�r*r,r�rQrRr�r5r r!r"r�r�� s|���$:?��8�@>C��)�2F�j�]�]�F�N�>�2���-��-��-��-�:�*
)r!r�)rc �� t|�rt|�}t|t�}t|�rt d|�d���t|�}d|i} |rd|i} n|�i} | r|rd| d<|st
|�|jd|�}|}
|�d}
| j|�t}tj|�ri} n=|r|rtd ��t}n't|�st}n|r|rt!|�st}|d|||
|d
�| ��}t|t"�rt%||�}|rt'|�nt)||||�|�|s||j*|<|jdd�}
|r|sd|vrt-||dd
||
��|_t1|�D�]}t3|�r� t5||�}d|i}|
rt9|
|�r|j|��|rd|i}t|t"�st;|||||�}||j*|<n~|}t|t"�r|j<}t?|||�}||d<tA|�rt}nt}|d||||d�|��}||j*|<|�|_t)|||��t|t"�s��tC|||���t|�r|r|jDdi|��|S#t6$rY��CwxYw)Nz'Cannot autospec a Mock object. [object=rr�r�TrrxrzJInstance can not be True when create_autospec is mocking an async function)r�rr�rxrr�r&)rZr-r�rrbr)r�rxr�r)rYr )#rir6r'r&rr2r�rHrrr*�isdatadescriptorr�r
rer
ror=r{r�r[r�r r�r!r�r)rEr(r:r<�
_must_skiprrar)r�r�rZr�r-rrR�is_type�
is_async_funcr8r�r5r<�wrappedrBrv�child_kwargsrr�rY�child_klasss r"r r �
s"��,�*��~��D�z����t�$�G�����"*�*.��� 4�5� 5�"�4�(�M��t�n�G���t�$��
�����8�'+��#�$���f�%��J�J�v�u�%�E��I���� ��N�N�6���E�����%��� ��� >�?�
?���
�t�_�$�� �X�&8��&>�$���(��W� ��(�&�(�D��$�
�&��d�D�)����d�#���t�W�h�7���8�(,����u�%��j�j��$�'�G��x�N�&�$@�+�D�(�T�26��29�;����T����U��� ��t�U�+�H���)���w�w��.����h��/��&��1�L��(�M�2��X�x��u�h�G�C�),�D����&��F��$�
�.�����"�4���8�I�(1�L��%�"�8�,�'��'���B�V�%�5�*0�B�4@�B�C�),�D����&�*�}�C���X�s�i�@��c�=�)��D�%��%�g�n���6�����%�f�%��K��U� �� �s�K� K
�K
c�.� t|t�s|t|di�vry|j}|jD]X}|j
j
|t�}|tur�,t|ttf�ryt|t�r|cSy|S)NrlF)r'r6r)r-rkrlrmrrCrBr=)r�rBr9r�rws r"r8r8s�����d�D�!��G�D�*�b�1�1���~�~���������#�#�E�7�3���W����f�|�[�9�:��
��
�
.��N����Nr!c��eZdZ dd�Zy)r:Nc�X�||_||_||_||_||_||_yr4)r��idsr�r�rZrx)rPr�r�r�rxrArZs r"rAz_SpecState.__init__=s,���� ���� ��
���� ��
��� r!)FNNNF)rrrrAr r!r"r:r:;s
��48�/4�r!r:c�v�t|t�rtj|�Stj|�Sr4)r'�bytes�io�BytesIO�StringIO)� read_datas r"�
_to_streamrHSs*���)�U�#��z�z�)�$�$��{�{�9�%�%r!c �f��� �
�� t��}|dg�
�
�fd�}�
�fd�}��
fd�� �
�fd���
�fd�}t�Vddl}tt t|j��jt t|j����at�+ddl}tt t|j���a |�tdt��}tt� ����j_
d�j_
d�j_
d�j _
d�j"_
|�j_� ��
d
<�
d
�j _|�j"_��j&_|�j(_� �
��fd�}||_�|_
|S)Nc����jj��jjS�dj|i|��Sr)� readlinesr��rQrR�_state�handles ��r"�_readlines_side_effectz)mock_open.<locals>._readlines_side_effectisC������(�(�4��#�#�0�0�0�"�v�a�y�"�"�D�3�F�3�3r!c����jj��jjS�dj|i|��Sr)�readr�rLs ��r"�_read_side_effectz$mock_open.<locals>._read_side_effectns=����;�;�#�#�/��;�;�+�+�+��v�a�y�~�~�t�.�v�.�.r!c?�`�K���Ed{��� �dj|i|�����7��wr)�readline)rQrR�_iter_side_effectrMs ��r"�_readline_side_effectz(mock_open.<locals>._readline_side_effectss<�����$�&�&�&��$�&��)�$�$�d�5�f�5�5�� '�s�.�,�.c3��K��jj� �jj����dD]}|���y�wr)rTr�)�linerMrNs ��r"rUz$mock_open.<locals>._iter_side_effectxsB������?�?�'�'�3���o�o�2�2�2���1�I�D��J��s�AAc�x���jj��jjSt�d�Sr)rTr�r�)rMrNs��r"�_next_side_effectz$mock_open.<locals>._next_side_effects1����?�?�'�'�3��?�?�/�/�/��F�1�I��r!r�open)rxr�)r�r�c���t���d<�jj�dk(r���d<�d�j_tS)Nrr�)rHrTr�r)rQrRrVrMrNrGs ����r"�
reset_datazmock_open.<locals>.reset_data�sH����y�)��q� ��?�?�&�&�&��)�3�-�/�F�1�I�*0��)�F�O�O�'��r!)rH� file_spec�_iorgrjr!�
TextIOWrapper�unionrE� open_specr[rr:r��writerQrTrKr�r�r�)r<rG�
_read_datarOrRrZr_r]rUrVrMrNs ` @@@@r"rrZs\���
��I�&�J��$�
�F�4�
/�
6�
�������S��!2�!2�3�4�:�:�3�s�3�;�;�?O�;P�Q�R� ������S����]�+�,� ��|��f�9�5��
�I�
&�F�$*�F���!� $�F�L�L��#�F�K�K��#'�F�O�O� �$(�F���!�/�F�K�K��%�'�F�1�I�"(��)�F�O�O��#9�F��� �"3�F�O�O��"3�F�O�O���"�D���D���Kr!c�"�eZdZ d�Zdd�Zd�Zy)rc��tdi|��S)Nr )r)rPrRs r"r(zPropertyMock._get_child_mock�s���"�6�"�"r!Nc��|�Sr4r )rPr-�obj_types r"r}zPropertyMock.__get__�s ���v�
r!c��||�yr4r )rPr-rJs r"r~zPropertyMock.__set__�s ���S� r!r4)rrrr(r}r~r r!r"rr�s���#��r!rc�� d|_t|�D]d} t||�}t |t
�s�!t |jj|�t�r�K|j|us�Zt|��fy#t$rY�swxYwr@)rr!r)rEr'rr�rmr:r�r)r<r�r�s r"rr�s�����D���D� �� ���d�#�A��!�_�-���a�&�&�*�*�4�0�*�=������%���G���� �� �s�A<�< B�Bc��eZdZ d�Zd�Zy)r�c�z�||_tt��}tj|_||jd<y)Nr�r0)�iteratorrrr*�CO_ITERABLE_COROUTINEr�rl)rPrmr�s r"rAz_AsyncIterator.__init__�s/�� ��
�#�X�6� �$�:�:� ��$-��
�
�j�!r!c��^K� t|j�S#t$rYt�wxYw�wr4)r�rmr�r�r�s r"r�z_AsyncIterator.__anext__�s1���� ���
�
�&�&��� �� � � �s�-��-� *�-�*�-N)rrrrAr�r r!r"r�r��s���.�!r!r�r�)NFNNN)FFNNr)��__all__r�rrDr*r�r2�builtinsrFr�typesrrr�
unittest.utilr� functoolsrr� threadingrr�rr!rWr(rr�r�r.r2r&r9r>rKr[rVreriror{rur�r�rhr�r�rr�MISSINGr|�DELETEDr;r�r�rgr�r�r�r�r� frozenset�removeprefixrXr�r4r�rr�r�rHrMrQrrTrlrurW�multiple�stopallr�
magic_methods�numericsr]rG�inplace�right�
_non_defaultsrwr�r��_sync_async_magics�
_async_magicsr�rVrvr�r�r�r�r�r�r�r�r�r�r
r�rr�rFrAr�r�rGr�r
r
rrrhr�rr r8r:r6r�r=r^rbrHrrrr�)rxr�s00r"�<module>r�s����&�� ��
�
���'�2�2�#�$��C�y�C�"�(�m�H�m�d�4�?�?�3�3G�T�m�H� �
�
���@��2��� �F #�
��&���6."�b>�6)� )�f� )�����;��
�
�
������������ �&*��*�(�6���
�6�
�X
<�d�X
<�x��O�$��$�����y�!� ���i� �$����
�4�
� �g!�D�g!�V8�=�/�8�z�P/�V�P/�h
<� '�T��t�d���&+��:?C�04�.�d�$�u���4�O�CH�O�dV/�&�V/�r�����
��
� �����
����
��"K� ��(�(�7�h�n�n�&6�7�
7�����5�H�N�N�$4�5�5���
���H�H�m�X�w��
6�7�=�=�?��?�!�H�v��?���@��!�]��$�'9�9�
��]�*����.����3�0�6�^� �����������������"������� � ��1�$;��;�> �:�� � �j� �G�
�D�G�B"��"�$�!��!�!�'�(�*;�*;�T�"B�C�I��h�-�K�
E+�T�E+�P(����(�V
�6�
��f��$�$v)�E�v)�r
�u���CG��S�*/�S�l�8 �� � �������� �
�
� �� �&�O�d�4��$�0!�!��S]
I��P ��Z��d���I��s*�N;�3N;�0)O�&O�:+O
�
O�O
Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists