Sindbad~EG File Manager

Current Path : /usr/local/lib/python3.12/test/test_asyncio/__pycache__/
Upload File :
Current File : //usr/local/lib/python3.12/test/test_asyncio/__pycache__/test_futures.cpython-312.pyc

�

(Μg�x����dZddlZddlZddlZddlZddlZddlZddlmZddl	m
Z
ddlZddlmZddl
Z
ddlmZddlmZd�Zd	�Zd
�Zd�ZGd�d
�ZGd�dej0�ZGd�d�Zej6eed�d�Gd�deej0��Zej6eed�d�Gd�deej0��ZGd�deej0�ZGd�d�Z ej6eed�d�Gd�de ej0��Z!ej6eed�d�Gd�de ej0��Z"Gd �d!e ej0�Z#Gd"�d#�Z$Gd$�d%e$ej0�Z%ej6eed�d�Gd&�d'e$ej0��Z&e'd(k(rejP�yy))zTests for futures.py.�N)�mock)�GenericAlias)�futures)�utils)�supportc�.�tjd�y�N)�asyncio�set_event_loop_policy���;/usr/local/lib/python3.12/test/test_asyncio/test_futures.py�tearDownModulers���!�!�$�'r
c��|Sr	r��fs r�	_fakefuncrs���Hr
c��yr	rrr
r�first_cbr���r
c��yr	rrr
r�last_cbrrr
c�L�eZdZdZdZdZdZd�Zd�Zd�Z	d�Z
d�Zd�Zd	�Z
d
�Zy)�
DuckFutureFNc�4�|j�ryd|_y)NFT)�done�_DuckFuture__cancelled��selfs r�cancelzDuckFuture.cancel+s���9�9�;�����r
c��|jSr	)rrs r�	cancelledzDuckFuture.cancelled1s�����r
c�Z�|jxs|jduxs|jduSr	)r�_DuckFuture__result�_DuckFuture__exceptionrs rrzDuckFuture.done4s4��� � �0��=�=��,�0��#�#�4�/�	1r
c��|j|j��|j�|j�|jSr	)�assertFalser"r%r$rs r�resultzDuckFuture.result9s9��������)�*����'��"�"�"��}�}�r
c�X�|j|j��|jSr	)r'r"r%rs r�	exceptionzDuckFuture.exception?s#��������)�*����r
c�r�|j|j��|j|�||_yr	)r'r�assertIsNotNoner$)rr(s  r�
set_resultzDuckFuture.set_resultCs+���������%����V�$���
r
c�r�|j|j��|j|�||_yr	)r'rr,r%)rr*s  r�
set_exceptionzDuckFuture.set_exceptionHs,���������%����Y�'�$��r
c#�K�|j�sd|_|��|j|j��|j�S�w�NT)r�_asyncio_future_blocking�
assertTruer(rs r�__iter__zDuckFuture.__iter__Ms:�����y�y�{�,0�D�)��J�����	�	��$��{�{�}��s�AA
)�__name__�
__module__�__qualname__r2rr$r%r r"rr(r*r-r/r4rr
rrr"sA�� %���K��H��K�� �1�
� ��
%�
r
rc�*��eZdZ�fd�Zd�Zd�Z�xZS)�	DuckTestsc���t�|��|j�|_|j	|jj
�yr	��super�setUp�
new_test_loop�loop�
addCleanup�close�r�	__class__s �rr=zDuckTests.setUpW�0���
��
���&�&�(��	�����	�	���(r
c�f�t�}tj|�}|j||�yr	)rr
�wrap_future�assertIs�rr�gs   r�test_wrap_futurezDuckTests.test_wrap_future\s'���L������"���
�
�a��r
c�f�t�}tj|�}|j||�yr	)rr
�
ensure_futurerGrHs   r�test_ensure_futurezDuckTests.test_ensure_futureas'���L���!�!�!�$���
�
�a��r
)r5r6r7r=rJrM�
__classcell__�rCs@rr9r9Us���)�
�
r
r9c�z��eZdZd�Z�fd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Zd�Zefd�Zd�Zd�Zd�Zd�Zd�Zd�Zd�Zej8d�d��Zej8d�d��Zej8d�d��Zej8d�d��Z ej8d�d��Z!ej8d�d��Z"ej8d�d��Z#d �Z$d!�Z%d"�Z&d#�Z'd$�Z(d%�Z)d&�Z*d'�Z+ej8d�d(��Z,d)�Z-d*�Z.d+�Z/d,�Z0d-�Z1d.�Z2�xZ3S)/�BaseFutureTestsc�&�|j|i|��Sr	)�cls�r�args�kwargss   r�_new_futurezBaseFutureTests._new_futureis���t�x�x��(��(�(r
c���t�|��|j�|_|j	|jj
�yr	r;rBs �rr=zBaseFutureTests.setUplrDr
c��|jt}|j|jtf�|j	|t
�yr	)rS�str�assertEqual�__args__�assertIsInstancer)r�futures  r�test_generic_aliasz"BaseFutureTests.test_generic_aliasqs5�����#���������3�&�1����f�l�3r
c	���Gd�d�}|jtj|��|jtj|���|jtjd��|jtjt	j
���|j
|j��}|jtj|��|jtjt|���|jtjt	j
t|����|j�y)Nc��eZdZdZd�Zy)�/BaseFutureTests.test_isfuture.<locals>.MyFutureNc��d|_y�NF)r2rs r�__init__z8BaseFutureTests.test_isfuture.<locals>.MyFuture.__init__zs
��05��-r
)r5r6r7r2rerr
r�MyFuturerbws
��'+�$�
6r
rf��r?)
r'r
�isfuturer3r�MockrWr?�typer )rrfrs   r�
test_isfuturezBaseFutureTests.test_isfuturevs���	6�	6�	
����)�)�(�3�4�����(�(���4�5�����)�)�!�,�-�	
����)�)�$�)�)�+�6�7����$�)�)��,������(�(��+�,�����)�)�$�q�'�2�3�	
����(�(����4��7�);�<�=�	���
r
c��|j|j��}|j|j��|j|j	��|j�|j
|j��y�Nrh)rWr?r'r"rr r3�rrs  r�test_initial_statez"BaseFutureTests.test_initial_state�s\�����$�)�)��,���������'��������"�	���
�������
�&r
c�z�|jtd�5|j�ddd�y#1swYyxYw)N�no current event loop)�assertRaisesRegex�RuntimeErrorrWrs r�test_constructor_without_loopz-BaseFutureTests.test_constructor_without_loop�s,��
�
#�
#�L�2I�
J�����K�
J�
J�s�1�:c�����fd�}�jj|��}�j|j�j��j|j	��j�y)Nc��,�K��j�S�wr	)rWrs�r�testz?BaseFutureTests.test_constructor_use_running_loop.<locals>.test�s������#�#�%�%�s�)r?�run_until_completerG�_loop�get_loop)rrxrs`  r�!test_constructor_use_running_loopz1BaseFutureTests.test_constructor_use_running_loop�sL���	&��I�I�(�(���0���
�
�a�g�g�t�y�y�)��
�
�a�j�j�l�D�I�I�.r
c�B�tj|j�|jtjd�|j	�}|j|j|j�|j|j�|j�yr	)r
�set_event_loopr?r@rWrGrzr{ros  r� test_constructor_use_global_loopz0BaseFutureTests.test_constructor_use_global_loop�sd�����t�y�y�)�����.�.��5�������
�
�a�g�g�t�y�y�)��
�
�a�j�j�l�D�I�I�.r
c�F�|jt|jd�y)N�*)�assertRaises�	TypeErrorrWrs r�test_constructor_positionalz+BaseFutureTests.test_constructor_positional�s�����)�T�%5�%5�r�:r
c��|jj|j|j��}|jtj
|j�|jj|j|j��}|jtj
|j�|jj|j|j��}|jttf�5|jd�ddd�|jj|j|j��}|jttf�5|jt�ddd�|jj|j|j��}|jttf�5|j�ddd�|jj|j|j��}|jttf�5|jd��ddd�|jj|j|j��}|jttf�5|jd��ddd�|jj|j|j��}	t!|�|jj|j|j��}	|j#�|jj|j|j��}	t%|�|jj|j|j��}|j'|j)��|j'|j+��y#1swY���xYw#1swY��vxYw#1swY��xYw#1swY���xYw#1swY��jxYw#ttf$rY��BwxYw#t$rY��wxYw#t$rY��wxYw)Nrhc��yr	rrs r�<lambda>z4BaseFutureTests.test_uninitialized.<locals>.<lambda>�s��Dr
c��yr	rrs rr�z4BaseFutureTests.test_uninitialized.<locals>.<lambda>�s��tr
)rS�__new__r?r�r
�InvalidStateErrorr(r*rt�AttributeErrorr-r/�	Exceptionr �add_done_callback�remove_done_callback�repr�	__await__�iterr'r"r�r�futs  r�test_uninitializedz"BaseFutureTests.test_uninitialized�s$���h�h���t�x�x�d�i�i��8�����'�3�3�S�Z�Z�@��h�h���t�x�x�d�i�i��8�����'�3�3�S�]�]�C��h�h���t�x�x�d�i�i��8��
�
�
��n�=�
>��N�N�4� �?��h�h���t�x�x�d�i�i��8��
�
�
��n�=�
>����i�(�?��h�h���t�x�x�d�i�i��8��
�
�
��n�=�
>��J�J�L�?��h�h���t�x�x�d�i�i��8��
�
�
��n�=�
>��!�!�.�1�?��h�h���t�x�x�d�i�i��8��
�
�
��n�=�
>��$�$�^�4�?��h�h���t�x�x�d�i�i��8��	���I��h�h���t�x�x�d�i�i��8��	��M�M�O��h�h���t�x�x�d�i�i��8��	���I��h�h���t�x�x�d�i�i��8���������)��������$�O?�
>��?�
>��?�
>��?�
>��?�
>���n�-�	��	���	��	���	��	�sr�O&�)O3�P�8P
�P�,P'�)P=�+Q
�&O0�3O=�P
�
P�P$�'P:�9P:�=	Q
�	Q
�
	Q�Qc��|j|j��}|jt|d��|j	|j
d�|j
d�|jtj�5|jj|�ddd�|j	|j
d�y#1swY�&xYw)Nrh�_cancel_message�
my message)rWr?r3�hasattrr[r�r r�r
�CancelledErrorryros  r�!test_future_cancel_message_getterz1BaseFutureTests.test_future_cancel_message_getter�s������$�)�)��,�������#4�5�6�����*�*�D�1�	�����
�
�
�w�5�5�
6��I�I�(�(��+�7�����*�*�L�9�7�
6�s�C�Cc�z�|j|j��}|jd�d|_|j	|jd�|jtj�5|jj|�ddd�|j	|jd�y#1swY�&xYw)Nrhr�zmy new message)	rWr?r r�r[r�r
r�ryros  r�!test_future_cancel_message_setterz1BaseFutureTests.test_future_cancel_message_setter�s������$�)�)��,��	�����,�������*�*�,<�=��
�
�w�5�5�
6��I�I�(�(��+�7�����*�*�,<�=�7�
6�s�0B1�1B:c��|j|j��}|j|j��|j|j	��|j|j��|j
tj|j�|j
tj|j�|j
tj|jd�|j
tj|jd�|j|j��yrn)rWr?r3r r"rr�r
r�r(r*r�r-r/r'ros  r�test_cancelzBaseFutureTests.test_cancel�s������$�)�)��,��������
�#�������
�&��������!����'�0�0�!�(�(�;����'�0�0�!�+�+�>����'�3�3�Q�\�\�4�H����'�3�3�Q�_�_�d�K��������$r
c��|j|j��}|jtj|j
�|j
d�|j|j��|j|j��|j|j�d�|j|j�d�|jtj|jd�|jtj|jd�|j|j��y�Nrhr�)rWr?r�r
r�r(r-r'r"r3rr[r*r/r ros  r�test_resultzBaseFutureTests.test_result�s������$�)�)��,�����'�3�3�Q�X�X�>�	���R���������'��������!��������R�(���������-����'�3�3�Q�\�\�4�H����'�3�3�Q�_�_�d�K��������$r
c��t�}|j|j��}|jtj
|j�|j|�|j|j��|j|j��|jt|j�|j|j
�|�|jtj
|jd�|jtj
|jd�|j|j��yrn)rtrWr?r�r
r�r*r/r'r"r3rr(r[r-r )r�excrs   r�test_exceptionzBaseFutureTests.test_exceptions����n�����$�)�)��,�����'�3�3�Q�[�[�A�	������������'��������!����,����1���������,����'�3�3�Q�\�\�4�H����'�3�3�Q�_�_�d�K��������$r
c���|�}|j|j��}|j|�|j|j	��|j|j
��|jt|j�|j�}|j}|j|t�|jt|�d�|j||�y)Nrhz!StopIteration .* cannot be raised)rWr?r/r'r"r3rr�rtr(r*�	__cause__r]�assertRegexrZ)r�stop_iteration_classr�r�causes     r�test_stop_iteration_exceptionz-BaseFutureTests.test_stop_iteration_exceptions���"�$�����$�)�)��,��	������������'��������!����,����1��k�k�m���
�
�����c�<�0�����S��#F�G����e�%9�:r
c�D�Gd�dt�}|j|�y)Nc��eZdZy)�OBaseFutureTests.test_stop_iteration_subclass_exception.<locals>.MyStopIterationN�r5r6r7rr
r�MyStopIterationr�(���r
r�)�
StopIterationr�)rr�s  r�&test_stop_iteration_subclass_exceptionz6BaseFutureTests.test_stop_iteration_subclass_exception's��	�m�	�	
�*�*�?�;r
c��|j|j��}|jt�|j	|j�t�yrn)rWr?r/rtr]r*ros  r�test_exception_classz$BaseFutureTests.test_exception_class-s;�����$�)�)��,��	����%����a�k�k�m�\�:r
c�P��|j|j����fd�}|�}|jt|�d�|jt|����j	d�|jt|�d�|jt|�d�y)Nrhc3�^�K�d���Ed{���}d|f���Ed{���}d|f��y7�7�
�w)N�A�B�Cr)�x�yrs  �r�fixturez6BaseFutureTests.test_yield_from_twice.<locals>.fixture5s5������I���A��q�&�L���A��q�&�L����s�
-�)�-�+�-�-r�r�)r�r�)r�r�)rWr?r[�nextr-)rr�rIrs   @r�test_yield_from_twicez%BaseFutureTests.test_yield_from_twice2s�������$�)�)��,��	�
�I������a��#�&�����a��!�$�	���R������a��)�,�����a��)�,r
c
�x	�|jjd�|j|j��}|jd}|j	t|�d|jj�d|d�d|d�d	��|j�|jjd
�|j|j��}|j	t|�d|jj�d��|j�|j|j��}|j�|j	t|�d|jj�d��|j|j��}|jd
�|j	t|�d|jj�d��|j	|j�d
�t�}|j|j��}|j|�|j	t|�d|jj�d��|j|j�|�d�}|j|j��}	|	jt �|t �}
|j#t|	�d|jjzd|
zz�|	j�|j	t|	�d|jj�d��|j|j��}|jt$�|jt&�|t$�}|t&�}
|j#t|�d|jjzd|�d|
�d�z�|j|j��}|jt$�t)d�D]}|jt ��|jt&�|�d|
��}|j#t|�d|jjzd|zz�|j�|j	t|�d|jj�d��y)NTrh����<z pending created at r�:rg�>Fz	 pending>z cancelled>�z finished result=4>z# finished exception=RuntimeError()>c��tj|�\}}|j�d|�d|��}tj|�S)Nz() at r�)�
test_utils�get_function_sourcer7�re�escape)�func�filename�lineno�texts    r�	func_reprz3BaseFutureTests.test_future_repr.<locals>.func_reprds7��)�=�=�d�C��H�f�&*�&7�&7��6�J�D��9�9�T�?�"r
z pending cb=\[%s\]>z pending cb=\[z, z\]>�z, <8 more>, )r?�	set_debugrW�_source_tracebackr[r�rSr5r r-r(rtr/rGr*r�rr�rr�range)r�f_pending_debug�frame�	f_pending�f_cancelled�f_resultr��f_exceptionr��f_one_callbacks�	fake_repr�f_two_callbacks�
first_repr�	last_repr�f_many_callbacks�i�cb_regexs                 r�test_future_reprz BaseFutureTests.test_future_reprDs���	�	���D�!��*�*��	�	�*�:���1�1�"�5�������!�����!�!�"�"6�u�Q�x�j��%��(��1�M�	O�	��� ��	�	���E�"��$�$�$�)�)�$�4�	�����i��A�d�h�h�.?�.?�-@�	�*J�K������&�&�D�I�I�&�6����������k�*�a����0A�0A�/B�+�,N�O��#�#����#�3�����A�������N�a���� 1� 1�2�2E�F�	H�������*�A�.��n���&�&�D�I�I�&�6���!�!�#�&�����������!�!�"�"E�F�	H�	
�
�
�k�+�+�-�s�3�	#�
�*�*��	�	�*�:���)�)�)�4��i�(�	������!��4�8�8�$�$�$�'=�	�'I�I�	K�	��� �����o�.��T�X�X�.�.�/�{�;�	=��*�*��	�	�*�:���)�)�(�3��)�)�'�2��x�(�
��g�&�	�����o�.����� 1� 1�1�&�	�53�3�	4� �+�+����+�;���*�*�8�4��q��A��.�.�y�9���*�*�7�3�*4�i�@������!�"��4�8�8�$�$�$�'=��'H�H�	J�	���!�����.�/��T�X�X�.�.�/�{�;�	=r
c�D�ddlm}|j|j��}|j	d�|j|j��}|||�|j|j
��|j|j�d�|j|j��}|jt��|j|j��}|||�|j|j
��|jt|j�|j|j��}|j�|j|j��}|||�|j|j��y)Nr)�_copy_future_staterh�
)�asyncio.futuresr�rWr?r-r3rr[r(r/rtr�r r")rr�r�newfr��newf_exceptionr��newf_cancelleds        r�test_copy_statezBaseFutureTests.test_copy_state�s=��6����$�)�)��,��	���R�����T�Y�Y��/���1�d�#�����	�	��$���������+��&�&�D�I�I�&�6���!�!�,�.�1��)�)�t�y�y�)�9���;��7�����+�+�-�.����,��(=�(=�>��&�&�D�I�I�&�6�������)�)�t�y�y�)�9���;��7�����0�0�2�3r
c�����|j|j����fd���fd�}|jtd�5|�ddd��j	�y#1swY�xYw)Nrhc3�&�K��Ed{���y7��wr	r�r�s�r�coroz'BaseFutureTests.test_iter.<locals>.coro�s������N�N�s���c�����\}}yr	r)�arg1�arg2r�s  �rrxz'BaseFutureTests.test_iter.<locals>.test�s�����J�D�$r
zawait wasn't used)rWr?rsrtr )rrxr�r�s  @@r�	test_iterzBaseFutureTests.test_iter�sU������D�I�I��.��	�	 ��
#�
#�L�2E�
F��F�G��
�
��G�
F�s�A � A)c��|j|j��}|jtd�5d|_ddd�y#1swYyxYw)Nrhzcan only be set to FalseT)rWr?rs�
ValueError�_log_tracebackr�s  r�test_log_tracebackz"BaseFutureTests.test_log_traceback�s?�����D�I�I��.��
�
#�
#�J�0J�
K�!%�C��L�
K�
K�s�A�A
zasyncio.base_events.loggerc��|j|j��}~|j|jj�yrn)rWr?r'�error�called�r�m_logr�s   r�test_tb_logger_abandonedz(BaseFutureTests.test_tb_logger_abandoned�s4�����D�I�I��.���������+�+�,r
c���|j|j��}|jt��|j	�~|j|jj�yrn)rWr?r/r�r r'r�r�r�s   r�&test_tb_logger_not_called_after_cancelz6BaseFutureTests.test_tb_logger_not_called_after_cancel�sM�����D�I�I��.�����)�+�&��
�
���������+�+�,r
c��|j|j��}|jd�~|j|jj
�yr�)rWr?r-r'r�r�r�s   r�!test_tb_logger_result_unretrievedz1BaseFutureTests.test_tb_logger_result_unretrieved�s@�����D�I�I��.�����r���������+�+�,r
c���|j|j��}|jd�|j�~|j	|j
j�yr�)rWr?r-r(r'r�r�r�s   r�test_tb_logger_result_retrievedz/BaseFutureTests.test_tb_logger_result_retrieved�sI�����D�I�I��.�����r���
�
���������+�+�,r
c�"�|j|j��}|jtd��~t	j
|j�t
j�|j|jj�y�Nrh�boom)rWr?r/rtr��run_brieflyr�
gc_collectr3r�r�r�s   r�$test_tb_logger_exception_unretrievedz4BaseFutureTests.test_tb_logger_exception_unretrieved�sc�����D�I�I��.�����,�v�.�/�����t�y�y�)�����������*�*�+r
c���|j|j��}|jtd��|j	�~|j|jj�yr)rWr?r/rtr*r'r�r�r�s   r�"test_tb_logger_exception_retrievedz2BaseFutureTests.test_tb_logger_exception_retrieved�sP�����D�I�I��.�����,�v�.�/��
�
���������+�+�,r
c��|j|j��}|jtd��|j	t|j
�~|j
|jj�yr)	rWr?r/rtr�r(r'r�r�r�s   r�)test_tb_logger_exception_result_retrievedz9BaseFutureTests.test_tb_logger_exception_result_retrieved�s[�����D�I�I��.�����,�v�.�/����,��
�
�3��������+�+�,r
c���d�}tjjd�}|j|d�}t	j
||j��}|jj|�\}}|jt	j|��|j|d�|j|tj��|jd��y)Nc�.�|tj�fSr	��	threading�	get_ident��args r�runz-BaseFutureTests.test_wrap_future.<locals>.run������,�,�.�/�/r
rg�oirhT��wait)�
concurrentr�ThreadPoolExecutor�submitr
rFr?ryr3rir[�assertNotEqualrr�shutdown)rr�ex�f1�f2�res�idents       rrJz BaseFutureTests.test_wrap_future�s���	0�
�
�
�
2�
2�1�
5��
�Y�Y�s�D�
!��
�
 �
 ��$�)�)�
4���Y�Y�1�1�"�5�
��U�����(�(��,�-�����d�#����E�9�#6�#6�#8�9�
�����r
c��|j|j��}tj|�}|j	||�yrn)rWr?r
rFrG�rrrs   r�test_wrap_future_futurez'BaseFutureTests.test_wrap_future_future�s7��
�
�
�4�9�9�
�
-��
�
 �
 ��
$���
�
�b�"�r
c��d�}tjjd�}|j|d�}|j	t
d�5t
j|�ddd�|jd��y#1swY�xYw)Nc�.�|tj�fSr	rrs rrz:BaseFutureTests.test_wrap_future_without_loop.<locals>.run�rr
rgrrrTr)	rrrrrsrtr
rFr)rrrrs    r�test_wrap_future_without_loopz-BaseFutureTests.test_wrap_future_without_loop�sj��	0�
�
�
�
2�
2�1�
5��
�Y�Y�s�D�
!��
�
#�
#�L�2I�
J�����#�K�
������K�
J�s�A<�<Bc�(��d�}tjjd�}|j|d���fd�}|jj|��}|j
|j|j�|jd��y)Nc�.�|tj�fSr	rrs rrz>BaseFutureTests.test_wrap_future_use_running_loop.<locals>.runrr
rgrc��6�K�tj��S�wr	)r
rF)rs�rrxz?BaseFutureTests.test_wrap_future_use_running_loop.<locals>.tests������&�&�r�*�*�s�Tr)	rrrrr?ryrGrzr)rrrrxrrs     @r�!test_wrap_future_use_running_loopz1BaseFutureTests.test_wrap_future_use_running_loopsm���	0�
�
�
�
2�
2�1�
5��
�Y�Y�s�D�
!��	+�
�Y�Y�
)�
)�$�&�
1���
�
�d�i�i����*�
�����r
c��tj|j�|jtjd�d�}tj
j
d�}|j|d�}tj|�}|j|j|j�|jd��y)Nc�.�|tj�fSr	rrs rrz=BaseFutureTests.test_wrap_future_use_global_loop.<locals>.runrr
rgrTr)r
r~r?r@rrrrrFrGrzr)rrrrrs     r� test_wrap_future_use_global_loopz0BaseFutureTests.test_wrap_future_use_global_loops������t�y�y�)�����.�.��5�	0�
�
�
�
2�
2�1�
5��
�Y�Y�s�D�
!��
�
 �
 ��
$���
�
�d�i�i����*�
�����r
c�\�tjj�}tj||j
��}|j
�tj|j
�|j|j��|j|j��yrn)rr�Futurer
rFr?r r�rr3r"r#s   r�test_wrap_future_cancelz'BaseFutureTests.test_wrap_future_cancelsk��
�
�
�
&�
&�
(��
�
 �
 ��$�)�)�
4��
�	�	�����t�y�y�)��������'��������'r
c��tjj�}tj||j
��}|j
d�|j�tj|j
�|j|j��|j|j�d�|j|j��yr�)rrr0r
rFr?r-r r�rr'r"r[r(r3r#s   r�test_wrap_future_cancel2z(BaseFutureTests.test_wrap_future_cancel2%s���
�
�
�
&�
&�
(��
�
 �
 ��$�)�)�
4��
�
�
�b��
�	�	�����t�y�y�)��������(��������b�)��������'r
c�F�|jjd�|j|j��}tj�j
dz
}|j
|jt�|j|jdddt|df�y)NTrhrg�����test_future_source_traceback)r?r�rW�sys�	_getframe�f_linenor]r��listr[�__file__)rr^r�s   rr7z,BaseFutureTests.test_future_source_traceback/s����	�	���D�!��!�!�t�y�y�!�1������)�)�A�-�����f�6�6��=�����1�1�"�5�b�q�9�"� �8�:�	;r
c�l�|jj|�d�}|�}|j|j��}|j|�d}t	j
|j�t
j�d|jj�d�}t|�||jf}|jjtj|��|jj dd}|j#|t%j&|t$j(��y)Nc�H�	t��#t$r}|cYd}~Sd}~wwxYwr	)�MemoryError�
BaseException)r�s r�memory_errorzLBaseFutureTests.check_future_exception_never_retrieved.<locals>.memory_error>s$��
�!�m�#�� �
��
��
�s�
�	!��!�!rh�^z exception was never retrieved
)�exc_infor)r?r�rWr/r�rrrrSr5rk�
__traceback__r��assert_called_once_withr�ANY�	call_argsr�r��compile�DOTALL)	r�debugr�rAr�r^�regexrC�messages	         r�&check_future_exception_never_retrievedz6BaseFutureTests.check_future_exception_never_retrieved:s����	�	���E�"�	�
�n���!�!�t�y�y�!�1�����S�!������t�y�y�)������D�H�H�%�%�&�&F�G����I�s�C�$5�$5�6��
���+�+�D�H�H�x�+�H��+�+�'�'��*�1�-������"�*�*�U�B�I�I�">�?r
c�&�|jd�yrd�rMrs r�%test_future_exception_never_retrievedz5BaseFutureTests.test_future_exception_never_retrievedRs���3�3�E�:r
c�&�|jd�yr1rOrs r�+test_future_exception_never_retrieved_debugz;BaseFutureTests.test_future_exception_never_retrieved_debugUs���3�3�D�9r
c���|j|j��}|j�tj|d�|j|j
��y)Nrh�)rWr?r r�_set_result_unless_cancelledr3r"r�s  r� test_set_result_unless_cancelledz0BaseFutureTests.test_set_result_unless_cancelledXsD�����D�I�I��.���
�
���,�,�S�!�4�����
�
��(r
c�6�|j|j��}|jd�|j�}d}	|j	d�|jd�|j|d�y#t$r}|jd}Yd}~�0d}~wwxYw)Nrh)rgrTzStopIteration was expectedr)	rWr?r-r4�send�failr�rUr[)rr��fir(rs     r�test_future_stop_iteration_argsz/BaseFutureTests.test_future_stop_iteration_args^s������D�I�I��.�����v��
�\�\�^����	4��G�G�D�M�
�I�I�2�3������(��	�	 ��W�W�Q�Z�F��	 �s�A6�6	B�?B�Bc	���|j|j��}t|�}|jt�5|jt|jtt
d�d�ddd�tj�5tjdt��|jt|jtt
d�d�|jt|jt
d�t
d��|jt|jtdd�ddd�|jt|jt�y#1swY��xYw#1swY�;xYw)Nrh�zebra�ignore)�category�elephant� )rWr?r��assertWarns�DeprecationWarningr�r��throw�warnings�catch_warnings�filterwarningsr�r�r;)rr�rZs   r�test_future_iter_throwz&BaseFutureTests.test_future_iter_throwks�����D�I�I��.��
�#�Y��
�
�
�0�
1����i����9�i��>P�RV�W�2�
�
$�
$�
&��#�#�H�7I�J����i����%�y��'<�b�
B����i����%�j�1�9�Z�3H�
J�
���j�"�(�(�J��d�K�'�	
���)�R�X�X�t�4�2�
1��
&�
&�s�1E�
B'E+�E(�+E4c��Gd�d�}td�D]4}|j|j��}|j|���6y)Nc��eZdZd�Zy)�5BaseFutureTests.test_future_del_collect.<locals>.Evilc�,�tj�yr	)�gc�collectrs r�__del__z=BaseFutureTests.test_future_del_collect.<locals>.Evil.__del__|s���
�
�r
N)r5r6r7rorr
r�Evilrk{s��
r
rp�drh)r�rWr?r-)rrpr�r�s    r�test_future_del_collectz'BaseFutureTests.test_future_del_collectzsA��	�	��s��A��"�"��	�	�"�2�C��N�N�4�6�"�r
)4r5r6r7rWr=r_rlrprur|rr�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�patchr�r�r�rrr	rrJr$r'r+r.r1r3r7rMrPrRrVr[rhrrrNrOs@rrQrQgs����)�)�
4�
�.'��/�/�;�2%�h:�	>�	%�%�%�BO�;�<�;�
-�$C=�J4�4�&�
�T�Z�Z�,�-�-�.�-�
�T�Z�Z�,�-�-�.�-��T�Z�Z�,�-�-�.�-��T�Z�Z�,�-�-�.�-��T�Z�Z�,�-�,�.�,��T�Z�Z�,�-�-�.�-��T�Z�Z�,�-�-�.�-���
�	�
�(�(�	;��T�Z�Z�,�-�@�.�@�.;�:�)�)�
5�#r
rQ�_CFuturezrequires the C _asyncio modulec�L�eZdZ	ejZd�Zd�Zy#e$rdZY�wxYw)�CFutureTestsNc���|j|j��}|jt�5|`ddd�|jt�5|`ddd�y#1swY�*xYw#1swYyxYwrn)rWr?r�r�r2r�r�s  r�test_future_del_segfaultz%CFutureTests.test_future_del_segfault�s^�����D�I�I��.��
�
�
�~�
.��,�/�
�
�
�~�
.��"�/�
.�/�
.��
.�
.�s�A�A*�A'�*A3c��ddl}t|j|j���}~t	j
|�}t	j�y)Nrrh)�_asyncior�rWr?rm�
get_referentsrn)rrz�it�evils    r�'test_future_iter_get_referents_segfaultz4CFutureTests.test_future_iter_get_referents_segfault�s=���
�$�"�"��	�	�"�2�
3�������)��
�
�
�r
)	r5r6r7rrtrSr�rxr~rr
rrvrv�s2�������#��������s��#�#rvc�V�eZdZ	Gd�dej�ZeZy#e$rdZYywxYw)�CSubFutureTestsc��eZdZy)�CSubFutureTests.CSubFutureNr�rr
r�
CSubFuturer��r�r
r�N)r5r6r7rrtr�rSr�rr
rr�r��s4���	��)�)�	���������s��(�(r�c�$�eZdZejZy)�
PyFutureTestsN)r5r6r7r�	_PyFuturerSrr
rr�r��s
��
�
�
�Cr
r�c�l��eZdZ�fd�Zd�Zd�Zd�Zd�Zd�Zd�Z	d�Z
d	�Zd
�Zd�Z
d�Zd
�Zd�Z�xZS)�BaseFutureDoneCallbackTestsc�L��t�|��|j�|_yr	)r<r=r>r?rBs �rr=z!BaseFutureDoneCallbackTests.setUp�s���
��
���&�&�(��	r
c�B�tj|j�yr	)r�rr?rs rrz'BaseFutureDoneCallbackTests.run_briefly�s�����t�y�y�)r
c������fd�}|S)Nc�(���j��yr	)�append)r^�bag�things ��r�bag_appenderz@BaseFutureDoneCallbackTests._make_callback.<locals>.bag_appender�s����J�J�u�r
r)rr�r�r�s `` r�_make_callbackz*BaseFutureDoneCallbackTests._make_callback�s���	��r
c��t�r	��NotImplementedErrorrs rrWz'BaseFutureDoneCallbackTests._new_future����!�!r
c��g}|j�}|j|d�}|j|d�}|j|d�}|j|�|j|�|j|�|j|�|j|�|j	|g�|jd�|j
�|j	|ddg�|j	|j�d�y�Nr��rq�foo�rWr�r�r�r[r-rr(�rr�r�cb1�cb2�cb3s      r�$test_callbacks_remove_first_callbackz@BaseFutureDoneCallbackTests.test_callbacks_remove_first_callback�s�����������!�!�#�r�*���!�!�#�r�*���!�!�#�s�+��	���C� �	���C� �	���C� �	���s�#�	���s�#�����b�!�	���U����������r�3�i�(��������U�+r
c�,�g}|j�}|j|d�}|j|d�}|j|d�}|j|�|j|�|j|�|j|�|j|�|j|�|j	|g�|jd�|j
�|j	|dg�|j	|j�d�yr�r�r�s      r�/test_callbacks_remove_first_and_second_callbackzKBaseFutureDoneCallbackTests.test_callbacks_remove_first_and_second_callback�s�����������!�!�#�r�*���!�!�#�r�*���!�!�#�s�+��	���C� �	���C� �	���C� �	���s�#�	���s�#�	���s�#�����b�!�	���U����������s�e�$��������U�+r
c��g}|j�}|j|d�}|j|d�}|j|d�}|j|�|j|�|j|�|j|�|j|�|j	|g�|jd�|j
�|j	|ddg�|j	|j�d�yr�r�r�s      r�$test_callbacks_remove_third_callbackz@BaseFutureDoneCallbackTests.test_callbacks_remove_third_callback�s�����������!�!�#�r�*���!�!�#�r�*���!�!�#�s�+��	���C� �	���C� �	���C� �	���s�#�	���s�#�����b�!�	���U����������r�2�h�'��������U�+r
c�z�g}|j�}|j|j|d��|j|j|d��|j|g�|j	d�|j�|j|ddg�|j|j
�d�y)Nr�r�r�)rWr�r�r[r-rr()rr�rs   r�$test_callbacks_invoked_on_set_resultz@BaseFutureDoneCallbackTests.test_callbacks_invoked_on_set_results����������	���D�/�/��R�8�9�	���D�/�/��R�8�9�����b�!�	���U����������r�2�h�'��������U�+r
c�J�g}|j�}|j|j|d��|j|g�t	�}|j|�|j
�|j|dg�|j|j�|�y)Nrq)rWr�r�r[rtr/rr*)rr�rr�s    r�'test_callbacks_invoked_on_set_exceptionzCBaseFutureDoneCallbackTests.test_callbacks_invoked_on_set_exceptions����������	���D�/�/��S�9�:�����b�!��n��	�������������s�e�$���������,r
c���g}|j�}|j|d�}|j|d�}|j|d�}|j|�|j|�|j|j	|�d�|j|j	|�d�|j|�td�D]}|j|��|j|j	|�d�|j|g�|j
d�|j�|j|dg�|j|j�d�y)NrgrTr6r��r�)	rWr�r�r[r�r�r-rr()rr�rr�r�r�r�s       r�test_remove_done_callbackz5BaseFutureDoneCallbackTests.test_remove_done_callback s<����������!�!�#�q�)���!�!�#�q�)���!�!�#�q�)��	
���C� �	���C� �	
����/�/��4�a�8�	
����/�/��4�a�8�	
���C� ��q��A�
����$��	
����/�/��4�a�8�����b�!�	���U����������q�c�"��������U�+r
c����|j���jt�td�D]}�jt��G�fd�d�}�j|��y)N�?c���eZdZ�fd�Zy)�RBaseFutureDoneCallbackTests.test_remove_done_callbacks_list_mutation.<locals>.evilc�0���jt�yrd)r��id�r�otherr�s  �r�__eq__zYBaseFutureDoneCallbackTests.test_remove_done_callbacks_list_mutation.<locals>.evil.__eq__Ks����(�(��,�r
N�r5r6r7r�r�s�rr}r�Js���
r
r}�rWr�rZr�r�r��r�_r}r�s   @r�(test_remove_done_callbacks_list_mutationzDBaseFutureDoneCallbackTests.test_remove_done_callbacks_list_mutationAsY������ �����c�"��r��A��!�!�"�%��	�	�
	� � ���(r
c����|j���jt�td�D]}�jt��G�fd�d�}�j|��y)Nr�c���eZdZ�fd�Zy)�OBaseFutureDoneCallbackTests.test_remove_done_callbacks_list_clear.<locals>.evilc�(���j|�yr	)r�r�s  �rr�zVBaseFutureDoneCallbackTests.test_remove_done_callbacks_list_clear.<locals>.evil.__eq__[s����(�(��/r
Nr�r�s�rr}r�Zs���
0r
r}r�r�s   @r�%test_remove_done_callbacks_list_clearzABaseFutureDoneCallbackTests.test_remove_done_callbacks_list_clearQsY������ �����c�"��r��A��!�!�"�%��	0�	0�	� � ���(r
c��d�}|j�}|j|�|jt�|jt�|jd�t	j
|j�y)Nc�.�|jt�yr	)r�rZrs r�mutzPBaseFutureDoneCallbackTests.test_schedule_callbacks_list_mutation_1.<locals>.mutcs��
�"�"�3�'r
rg)rWr�rZr-r�rr?)rr�r�s   r�'test_schedule_callbacks_list_mutation_1zCBaseFutureDoneCallbackTests.test_schedule_callbacks_list_mutation_1`s_��	(���� �����c�"����c�"����c�"����q�����t�y�y�)r
c������|j���jt�td�D]}�jt��d�d�G���fd�d�}�j|��y)Nr�rqrc���eZdZ���fd�Zy)�QBaseFutureDoneCallbackTests.test_schedule_callbacks_list_mutation_2.<locals>.evilc�D���dz
���kr�jt�y)NrgF)r�r�)rr��	extra_cbsr��
max_extra_cbss  ���rr�zXBaseFutureDoneCallbackTests.test_schedule_callbacks_list_mutation_2.<locals>.evil.__eq__zs%����Q��	��}�,��)�)�"�-�r
Nr�)r�r�r�s���rr}r�ys���
r
r}r�)rr�r}r�r�r�s   @@@r�'test_schedule_callbacks_list_mutation_2zCBaseFutureDoneCallbackTests.test_schedule_callbacks_list_mutation_2mse������ �����c�"��r��A��!�!�"�%���
��	�	�	�	� � ���(r
)r5r6r7r=rr�rWr�r�r�r�r�r�r�r�r�r�rNrOs@rr�r��sJ���)�*��"�,�.,�0,�.,�-�,�B)� 
)�*�)r
r�c��eZdZd�Zy)�CFutureDoneCallbackTestsc�B�tj|j��Srn�rrtr?rs rrWz$CFutureDoneCallbackTests._new_future�s�����T�Y�Y�/�/r
N�r5r6r7rWrr
rr�r��s��
0r
r�c��eZdZd�Zy)�CSubFutureDoneCallbackTestsc�Z�Gd�dtj�}||j��S)Nc��eZdZy)�;CSubFutureDoneCallbackTests._new_future.<locals>.CSubFutureNr�rr
rr�r��r�r
r�rhr�)rr�s  rrWz'CSubFutureDoneCallbackTests._new_future�s#��	��)�)�	��t�y�y�)�)r
Nr�rr
rr�r��s��
*r
r�c��eZdZd�Zy)�PyFutureDoneCallbackTestsc�B�tj|j��Srn)rr�r?rs rrWz%PyFutureDoneCallbackTests._new_future�s��� � �d�i�i�0�0r
Nr�rr
rr�r��s��1r
r�c�*��eZdZd�Z�fd�Zd�Z�xZS)�BaseFutureInheritanceTestsc��t�r	r�rs r�_get_future_clsz*BaseFutureInheritanceTests._get_future_cls�r�r
c���t�|��|j�|_|j	|jj
�yr	r;rBs �rr=z BaseFutureInheritanceTests.setUp�rDr
c���|j�}Gd�d|�}||j��}|jtd�5|j	�ddd�y#1swYyxYw)Nc��eZdZd�Zy)�QBaseFutureInheritanceTests.test_inherit_without_calling_super_init.<locals>.MyFutc��yr	rrTs   rrezZBaseFutureInheritanceTests.test_inherit_without_calling_super_init.<locals>.MyFut.__init__�s��r
N)r5r6r7rerr
r�MyFutr��s��
r
r�rhz!Future object is not initialized.)r�r?rsrtr{)rrSr�r�s    r�'test_inherit_without_calling_super_initzBBaseFutureInheritanceTests.test_inherit_without_calling_super_init�s[���"�"�$��	�C�	�
����#��
�
#�
#��/�
�
�L�L�N�	
�
�
�s�A�A()r5r6r7r�r=r�rNrOs@rr�r��s���"�)�
r
r�c��eZdZd�Zy)�PyFutureInheritanceTestsc�"�tjSr	)rr�rs rr�z(PyFutureInheritanceTests._get_future_cls�s��� � � r
N�r5r6r7r�rr
rr�r��s��!r
r�c��eZdZd�Zy)�CFutureInheritanceTestsc�"�tjSr	)rrtrs rr�z'CFutureInheritanceTests._get_future_cls�s�����r
Nr�rr
rr�r��s�� r
r��__main__))�__doc__�concurrent.futuresrrmr�r8r�unittestr�typesrr
rre�test.test_asynciorr�rxrrrrrr�TestCaser9rQ�
skipUnlessr�rvr�r�r�r�r�r�r�r�r�r5�mainrr
r�<module>r�s����	�	�
��������1��(�
�	�	�0�0�f�
�#�#��$Z#�Z#�z����W�W�j�1�5�7��?�J�$7�$7��7��,����W�W�j�1�5�7��o�z�':�':��7���O�Z�%8�%8��U)�U)�p����W�W�j�1�5�7�0�:�)�2�2�0�7�0�����W�W�j�1�5�7�*�"=�",�"5�"5�*�7�*�1� ;� *� 3� 3�1���6!�9�)�2�2�!�����W�W�j�1�5�7� �8�(�1�1� �7� ��z���H�M�M�O�r

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