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

�Ke�����ddlZddlZddlmZddlmZmZddlmZmZm	Z	ddl
Z
ddlZddl
Z
ddlZddlZgd�ZGd�d��ZGd�d	��ZGd
�d��ZGd�d
��ZGd�d��ZGd�d��ZGd�d��ZGd�d��ZGd�d��ZGd�d��ZGd�d��ZGd�dej��Zedkrej��dSdS)�N)�cpython_only)�TESTFN�unlink)�check_free_after_iterating�	ALWAYS_EQ�NEVER_EQ))rrr)rr�)rr�)rr	r)rr	r	�rr	r
)rr
r)rr
r	)rr
r
)r	rr)r	rr	)r	rr
)r	r	r)r	r	r	)r	r	r
)r	r
r)r	r
r	)r	r
r
)r
rr)r
rr	)r
rr
)r
r	r)r
r	r	)r
r	r
)r
r
r)r
r
r	)r
r
r
c� �eZdZd�Zd�Zd�ZdS)�BasicIterClassc�"�||_d|_dS�Nr)�n�i��selfrs  �8/usr/local/apps/python3/lib/python3.11/test/test_iter.py�__init__zBasicIterClass.__init__s����������c�L�|j}||jkrt�|dz|_|S�Nr	)rr�
StopIteration)r�ress  r�__next__zBasicIterClass.__next__!s*���f���$�&�=�=����q�����
rc��|S�N��rs r�__iter__zBasicIterClass.__iter__'����rN��__name__�
__module__�__qualname__rrr rrrr
r
sA����������������rr
c��eZdZd�Zd�ZdS)�IteratingSequenceClassc��||_dSr�rrs  rrzIteratingSequenceClass.__init__+�
������rc�*�t|j��Sr)r
rrs rr zIteratingSequenceClass.__iter__-s���d�f�%�%�%rN�r#r$r%rr rrrr'r'*s2���������&�&�&�&�&rr'c� �eZdZd�Zd�Zd�ZdS)�IteratorProxyClassc��||_dSr�r�rrs  rrzIteratorProxyClass.__init__1r*rc�*�t|j��Sr)�nextrrs rrzIteratorProxyClass.__next__3s���D�F�|�|�rc��|Srrrs rr zIteratorProxyClass.__iter__5r!rNr"rrrr.r.0sA����������������rr.c��eZdZd�Zd�ZdS)�
SequenceClassc��||_dSrr)rs  rrzSequenceClass.__init__9r*rc�>�d|cxkr|jkrnn|St�r)r�
IndexErrorr1s  r�__getitem__zSequenceClass.__getitem__;s(����?�?�?�?�D�F�?�?�?�?�?��H��rN�r#r$r%rr:rrrr6r68s2�������������rr6c��eZdZd�Zd�ZdS)�SequenceProxyClassc��||_dSr��s)rr@s  rrzSequenceProxyClass.__init__Br*rc��|j|Srr?r1s  rr:zSequenceProxyClass.__getitem__Ds���v�a�y�rNr;rrrr=r=As2�������������rr=c��eZdZd�ZdS)�UnlimitedSequenceClassc��|Srrr1s  rr:z"UnlimitedSequenceClass.__getitem__H����rN�r#r$r%r:rrrrCrCGs#����������rrCc��eZdZdS)�DefaultIterClassN)r#r$r%rrrrHrHKs�������DrrHc��eZdZd�ZdZdS)�NoIterClassc��|Srrr1s  rr:zNoIterClass.__getitem__OrErN)r#r$r%r:r rrrrJrJNs"����������H�H�HrrJc��eZdZd�ZdS)�BadIterableClassc��t�r)�ZeroDivisionErrorrs rr zBadIterableClass.__iter__Ts���rN�r#r$r%r rrrrMrMSs#������ � � � � rrMc��eZdZd�Zd�ZdS)�CallableIterClassc��d|_dSrr0rs rrzCallableIterClass.__init__Xr*rc�B�|j}|dz|_|dkrt�|S)Nr	�d)rr9r1s  r�__call__zCallableIterClass.__call__Zs(���F���Q�����s�7�7����rN)r#r$r%rrVrrrrRrRWs2�������������rrRc��eZdZd�Zd�ZdS)�EmptyIterClassc��dSrrrs r�__len__zEmptyIterClass.__len__bs���qrc��t�r�rr1s  rr:zEmptyIterClass.__getitem__ds���rN)r#r$r%rZr:rrrrXrXas2�������������rrXc��eZdZd>d�Zd>d�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*�Z+d+�Z,d,�Z-e.d-���Z/d.�Z0d/�Z1d0�Z2d1�Z3d2�Z4d3�Z5d4�Z6d5�Z7d6�Z8d7�Z9d8�Z:e.d9���Z;d:�Z<d;�Z=d<�Z>d=S)?�TestCaseTc���|r|�||��g}		t|��}n#t$rYnwxYw|�|���7|�||��dSr)�check_pickler3r�append�assertEqual)r�it�seq�pickler�vals      r�check_iteratorzTestCase.check_iteratorls����	'����b�#�&�&�&���	�
��2�h�h���� �
�
�
���
�����J�J�s�O�O�O�	�	
����c�"�"�"�"�"s�-�
:�:c��|r#|�t|��|��g}|D]}|�|���|�||��dSr)r`�iterrarb)r�exprrdrerrfs      r�check_for_loopzTestCase.check_for_loopysg���	/����d�4�j�j�#�.�.�.����	�	�C��J�J�s�O�O�O�O�����c�"�"�"�"�"rc�V�ttjdz��D�]
}tj||��}tj|��}|�t
|tjj	����|�
t|��|��tj|��}	t|��n#t$rY��wxYwtj||��}tj|��}|�
t|��|dd�����dSr)�rangere�HIGHEST_PROTOCOL�dumps�loads�
assertTrue�
isinstance�collections�abc�Iteratorrb�listr3r)r�itorgrd�proto�drcs      rr`zTestCase.check_pickle�s���6�2�Q�6�7�7�	0�	0�E���U�E�*�*�A���a���B�
�O�O�J�r�;�?�+C�D�D�E�E�E����T�"�X�X�s�+�+�+���a���B�
��R������ �
�
�
���
������R��'�'�A���a���B����T�"�X�X�s�1�2�2�w�/�/�/�/�!	0�	0s�3C�
C�Cc��|�ttd����ttd������dS�N�
)rgrirmrvrs r�test_iter_basiczTestCase.test_iter_basic��6�����D��r���O�O�T�%��)�)�_�_�=�=�=�=�=rc��ttd����}t|��}t|��}|�||u��dSr{)rvrmrirq)rrdrc�it2s    r�test_iter_idempotencyzTestCase.test_iter_idempotency�sE���5��9�9�o�o��
�#�Y�Y���2�h�h������c�	�"�"�"�"�"rc��|�ttd����ttd������dSr{�rkrirmrvrs r�test_iter_for_loopzTestCase.test_iter_for_loop�r~rc��td��}g}t|��D]>}t|��D],}t|��D]}|�|||f����-�?|�|t��dS�N�)rmrirarb�TRIPLETS)rrdrr�j�ks      r�test_iter_independencezTestCase.test_iter_independence�s����A�h�h�����c���	*�	*�A��#�Y�Y�
*�
*���c���*�*�A��J�J��1�a�y�)�)�)�)�*�
*�	
����h�'�'�'�'�'rc���td����fd�t���D��}|�|t��dS)Nr�c�b��g|]+}t���D]}t���D]}|||f����,Sr)ri��.0rr�r�rds    �r�
<listcomp>z<TestCase.test_nested_comprehensions_iter.<locals>.<listcomp>�so���I�I�I��4��9�9�I�I�&'�d�3�i�i�I�I�9:��1�a�y�I�I�I�I�Ir)rmrirbr��rrrds  @r�test_nested_comprehensions_iterz(TestCase.test_nested_comprehensions_iter�s_����A�h�h��I�I�I�I��S�	�	�I�I�I������h�'�'�'�'�'rc�x��td����fd��D��}|�|t��dS)Nr�c�.��g|]}�D]}�D]}|||f���
�Srrr�s    �rr�z;TestCase.test_nested_comprehensions_for.<locals>.<listcomp>�s9���@�@�@�Q�s�@�@�!�C�@�@�q��1�a�y�@�@�@�@�@r)rmrbr�r�s  @r�test_nested_comprehensions_forz'TestCase.test_nested_comprehensions_for�sC����A�h�h��@�@�@�@�#�@�@�@������h�'�'�'�'�'rc��|�td��ttd������dSr{)rkr'rvrmrs r�test_iter_class_forzTestCase.test_iter_class_for�s3�����2�2�6�6��U�2�Y�Y���H�H�H�H�Hrc��|�ttd����tt	d������dSr{)rgrir'rvrmrs r�test_iter_class_iterzTestCase.test_iter_class_iter�s;�����D�!7��!;�!;�<�<�d�5��9�9�o�o�N�N�N�N�Nrc��|�td��ttd������dSr{)rkr6rvrmrs r�test_seq_class_forzTestCase.test_seq_class_for�s2�����M�"�-�-�t�E�"�I�I���?�?�?�?�?rc��|�ttd����tt	d������dSr{)rgrir6rvrmrs r�test_seq_class_iterzTestCase.test_seq_class_iter�s:�����D��r�!2�!2�3�3�T�%��)�)�_�_�E�E�E�E�Erc
��td��}ttjdz��D�]�}t	|��}tj||f|��}tj|��\}}d|_|�t|��t|����|�
t|��ttd������t|��tj||f|��}tj|��\}}d|_|�t|��t|����|�
t|��ttdd������tdd��D]}t|���tj||f|��}tj|��\}}d|_|�t|��t|����|�
t|��ttdd������|�
tt|��tj||f|��}tj|��\}}d|_|�t!|t"jj����|�
t|��g�����dS)N�r	�)r6rmrernrirorpr�assertIs�typerbrvr3�assertRaisesrrqrrrsrtru)r�origrx�itorigryrcrdrs        r�#test_mutating_seq_class_iter_picklez,TestCase.test_mutating_seq_class_iter_pickle�se���Q�����6�2�Q�6�7�7� 	+� 	+�E��$�Z�Z�F���f�d�^�U�3�3�A��l�1�o�o�G�B���C�E��M�M�$�r�(�(�D��L�L�1�1�1����T�"�X�X�t�E�!�H�H�~�~�6�6�6�
��L�L�L���f�d�^�U�3�3�A��l�1�o�o�G�B���C�E��M�M�$�r�(�(�D��L�L�1�1�1����T�"�X�X�t�E�!�Q�K�K�'8�'8�9�9�9��1�a�[�[�
�
���V�������f�d�^�U�3�3�A��l�1�o�o�G�B���C�E��M�M�$�r�(�(�D��L�L�1�1�1����T�"�X�X�t�E�!�Q�K�K�'8�'8�9�9�9�
���m�T�6�:�:�:���f�d�^�U�3�3�A��l�1�o�o�G�B���C�E��O�O�J�r�;�?�+C�D�D�E�E�E����T�"�X�X�r�*�*�*�*�A 	+� 	+rc�p�td��}t|��}t|��}|D]}t|���d|_|�t|��g��|�t|��ddg��|�t|��gd���dS)Nr�r��)rr	r
r��r�r�)r6rir3rrbrv)r�a�exhit�empit�xs     r�&test_mutating_seq_class_exhausted_iterz/TestCase.test_mutating_seq_class_exhausted_iter�s����!�����Q�����Q�����	�	�A���K�K�K�K��������e���b�)�)�)�����e���q�!�f�-�-�-�����a���"7�"7�"7�8�8�8�8�8rc�����tj�ttd��d
��fd�	}t	��ftd��ft
d��fdd�dfttfg}	tj
|d��}|�|d���dd	f��|�|gd
����dgff��|�|d�dttd��������tgff��|D]#}|�||��ddf���$	����D]>\}}tjt"��5�|=ddd��n#1swxYwY|�|<�?dS#����D]>\}}tjt"��5�|=ddd��n#1swxYwY|�|<�?wxYw)N)ri�reversedc���|�t|��nt||��}Gd�d��}�|=�|�|||��<|���S)Nc� �eZdZd�Zd�Zd�ZdS)�KTestCase.test_reduce_mutating_builtins_iter.<locals>.run.<locals>.CustomStrc�"�||_||_dSr)�name�iterator)rr�r�s   rrzTTestCase.test_reduce_mutating_builtins_iter.<locals>.run.<locals>.CustomStr.__init__s�� $�D�I�$,�D�M�M�Mrc�*�t|j��Sr)�hashr�rs r�__hash__zTTestCase.test_reduce_mutating_builtins_iter.<locals>.run.<locals>.CustomStr.__hash__
s����	�?�?�*rc�@�t|j��||jkSr)rvr�r�)r�others  r�__eq__zRTestCase.test_reduce_mutating_builtins_iter.<locals>.run.<locals>.CustomStr.__eq__s!��
���'�'�'� �D�I�-�-rN)r#r$r%rr�r�rrr�	CustomStrr�sA������-�-�-�+�+�+�.�.�.�.�.rr�)ri�
__reduce__)�builtin_name�item�sentinelrcr��
builtins_dictr�s     ��r�runz8TestCase.test_reduce_mutating_builtins_iter.<locals>.runs|���'�/��d����T�$��5I�5I�B�
.�
.�
.�
.�
.�
.�
.�
.�"�l�+�9=�l�9K�M�)�)�L�"�5�5�6��=�=�?�?�"r�)�r	r
r�c��dSrrrrr�<lambda>z=TestCase.test_reduce_mutating_builtins_iter.<locals>.<lambda>!s��Q�rrri�xyz)�r�r�)rr)�builtins�__dict__rir�rX�bytes�	bytearray�tuple�int�	functools�partialrbrvrm�items�
contextlib�suppress�KeyError)	rr��types�run_iter�case�key�funcr�r�s	       @@r�"test_reduce_mutating_builtins_iterz+TestCase.test_reduce_mutating_builtins_iter�s�����!�)�
��(�3�3��	#�	#�	#�	#�	#�	#�	#�4�
�
��
�1�X�X�K�
�q�\�\�O��
�Y��N�
�3�Z�M�

��	*� �(��f�5�5�H�
���X�X�e�_�_�t�F�|�U�.C�D�D�D����X�X�i�i�i�0�0�4��<�"��2G�H�H�H�
�����J� 0��Z� 0��e�A�h�h��� @� @�A�A���u�
�
�
�
�
�
I�
I��� � ���4��4��<��2G�H�H�H�H�
I�"�Z�Z�\�\�
*�
*�	��T� �(��2�2�+�+�&�c�*�	+�+�+�+�+�+�+�+�+�+�+����+�+�+�+�
&*�
�c�"�"�
*�
*��T�Z�Z�\�\�
*�
*�	��T� �(��2�2�+�+�&�c�*�	+�+�+�+�+�+�+�+�+�+�+����+�+�+�+�
&*�
�c�"�"�
*���sC�+CF�;F�F	�F	�3G3�G!	�G3�!G%
�%G3�(G%
�)
G3c�~�Gd�dt��}|�tt|����dS)Nc��eZdZd�ZdS)�5TestCase.test_new_style_iter_class.<locals>.IterClassc��|Srrrs rr z>TestCase.test_new_style_iter_class.<locals>.IterClass.__iter__E����rNrPrrr�	IterClassr�Ds#������
�
�
�
�
rr�)�objectr��	TypeErrorri)rr�s  r�test_new_style_iter_classz"TestCase.test_new_style_iter_classCsR��	�	�	�	�	��	�	�	�	
���)�T�9�9�;�;�7�7�7�7�7rc��|�tt��d��tt	d����d���dS)Nr|T�re)rgrirRrvrmrs r�test_iter_callablezTestCase.test_iter_callableJsA�����D�!2�!4�!4�b�9�9�4��b�	�	�?�?�SW��X�X�X�X�Xrc��dgfd�}|�t|d��ttd����d���dS)Nrc�&�|d}|dz|d<|S)Nrr	r��staters  r�spamz)TestCase.test_iter_function.<locals>.spamOs���a��A���s�E�!�H��Hrr|Fr��rgrirvrm�rr�s  r�test_iter_functionzTestCase.test_iter_functionNsR���s�	�	�	�	�	
���D��r�N�N�D��r���O�O�E��J�J�J�J�Jrc��dgfd�}|�t|d��ttd����d���dS)Nrc�@�|d}|dkrt�|dz|d<|S)Nrr|r	r\r�s  rr�z.TestCase.test_iter_function_stop.<locals>.spamWs,���a��A��B�w�w�#�#���s�E�!�H��Hr�r|Fr�r�r�s  r�test_iter_function_stopz TestCase.test_iter_function_stopVsR���s�	�	�	�	�	
���D��r�N�N�D��r���O�O�E��J�J�J�J�Jrc�������d�d�d������fd��d�_t�����_|�t��5t�j��ddd��dS#1swxYwYdS)Nr	r
c�$�t|��dS)z2Exhaust an iterator without raising StopIteration.N)rv)r�s r�exhaustzLTestCase.test_iter_function_concealing_reentrant_exhaustion.<locals>.exhaustfs����N�N�N�N�Nrc�H���jr�Sd�_��j���S)NT)�is_recursive_callr�)�HAS_MORE�NO_MOREr�r�s����rr�zITestCase.test_iter_function_concealing_reentrant_exhaustion.<locals>.spamjs4����%�
���%)�D�"��G�D�M�"�"�"��OrF)r�rir�r�rr3)rr�r�r�r�s @@@@r�2test_iter_function_concealing_reentrant_exhaustionz;TestCase.test_iter_function_concealing_reentrant_exhaustion_s�����������	�	�	�	�	�	�	�	�	�	�	�"'����T�7�+�+��
�
�
�
�}�
-�
-�	 �	 �������	 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 �	 ����	 �	 �	 �	 �	 �	 s�
A,�,A0�3A0c	��dgfd�}g}	t|d��D]}|�|���	|�d��dS#t$r4|�|tt
d������YdSwxYw)Nrc�@�|d}|dz|d<|dkrt�|S)Nrr	r|)�RuntimeErrorr�s  rr�z.TestCase.test_exception_function.<locals>.spamzs,���a��A���s�E�!�H��B�w�w�"�"��Hrr��should have raised RuntimeErrorr|)rira�failr�rbrvrm)rr�rr�s    r�test_exception_functionz TestCase.test_exception_functionys����s�	�	�	�	���	9��$��^�^�
�
���
�
�1�
�
�
�
�
�

�I�I�7�8�8�8�8�8���	3�	3�	3����S�$�u�R�y�y�/�/�2�2�2�2�2�2�	3���s�(A
�
:B�Bc	�&�Gd�dt��}g}	|d��D]}|�|���	|�d��dS#t$r4|�|tt
d������YdSwxYw)Nc��eZdZd�ZdS)�9TestCase.test_exception_sequence.<locals>.MySequenceClassc�R�|dkrt�t�||��Sr{)r�r6r:r1s  rr:zETestCase.test_exception_sequence.<locals>.MySequenceClass.__getitem__�s'����7�7�&�&�$�0�0��q�9�9�9rNrFrrr�MySequenceClassr��#������
:�
:�
:�
:�
:rrr�r�r|)r6rarr�rbrvrm)rrrr�s    r�test_exception_sequencez TestCase.test_exception_sequence�s���	:�	:�	:�	:�	:�m�	:�	:�	:�
��	9�$�_�R�(�(�
�
���
�
�1�
�
�
�
�
�

�I�I�7�8�8�8�8�8���	3�	3�	3����S�$�u�R�y�y�/�/�2�2�2�2�2�2�	3���s�#A�:B�Bc��Gd�dt��}|�|d��ttd����d���dS)Nc��eZdZd�ZdS)�4TestCase.test_stop_sequence.<locals>.MySequenceClassc�R�|dkrt�t�||��Sr{)rr6r:r1s  rr:z@TestCase.test_stop_sequence.<locals>.MySequenceClass.__getitem__�s'����7�7�'�'�$�0�0��q�9�9�9rNrFrrrrr�rrrr�r|Fr�)r6rkrvrm)rrs  r�test_stop_sequencezTestCase.test_stop_sequence�se��	:�	:�	:�	:�	:�m�	:�	:�	:�
	
���O�O�B�/�/��e�B�i�i�����O�O�O�O�Orc��|�ttd����ttd������dS)Ni'r�rs r�test_iter_big_rangezTestCase.test_iter_big_range�s:�����D��u���.�.��U�5�\�\�0B�0B�C�C�C�C�Crc�L�|�tg��g��dSr�rkrirs r�test_iter_emptyzTestCase.test_iter_empty�s$�����D��H�H�b�)�)�)�)�)rc��|�td��ttd������dS)N)
rr	r
r�r�r�r�r�r��	r|)rkrirvrmrs r�test_iter_tuplezTestCase.test_iter_tuple�s3�����D�!6�7�7��e�B�i�i���I�I�I�I�Irc��|�ttd����ttd������dSr{r�rs r�test_iter_rangezTestCase.test_iter_range�r~rc�P�|�td��gd���dS�N�abcde)r��b�cry�errs r�test_iter_stringzTestCase.test_iter_string�s+�����D��M�M�+D�+D�+D�E�E�E�E�Erc��i}td��D]}d||<�|�|t|�������dSr{)rmrkrv�keys)r�dictrs   r�test_iter_dictzTestCase.test_iter_dict�sS�����r���	�	�A��D��G�G����D�$�t�y�y�{�{�"3�"3�4�4�4�4�4rc�l�ttdd���}	td��D]}|�d|z���	|���n#|���wxYwttdd���}	|�|gd�d�	��|�|gd�	��|���	t
t��dS#t$rYdSwxYw#|���	t
t��w#t$rYwwxYwxYw)
N�w�utf-8��encodingr��%d
�r�z0
�1
�2
�3
�4
Fr�)�openrrm�write�closerkr�OSError)r�frs   r�test_iter_filezTestCase.test_iter_file�sO�����w�/�/�/��	��1�X�X�
$�
$�������
�#�#�#�#�
$�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��	�����#F�#F�#F�u��U�U�U�����2�e��4�4�4�
�G�G�I�I�I�
��v��������
�
�
����
�����
�G�G�I�I�I�
��v�������
�
�
���
������sM�*A�A/�
2C8�C'�'
C5�4C5�8D3�D#�"D3�#
D0�-D3�/D0�0D3c� �|�ttd����ttd������|�ttd����g��|�td��g��dddd�}|�t|��t|�������|�ttt��|�ttd��ttd	d
���}	td��D]}|�	d|z���	|�
��n#|�
��wxYwttd
d
���}	|�t|��gd���|�dd��|�t|��gd���|�
��	tt��dS#t$rYdSwxYw#|�
��	tt��w#t$rYwwxYwxYw)Nr�rrr	r
r���one�two�three�*r$r%r&r(r)r*)rbrvr6rmr r�r�r/rr0r1�seekrr2�rryr3rs    r�test_builtin_listzTestCase.test_builtin_list�sQ������m�A�.�.�/�/��e�A�h�h���@�@�@�����m�A�.�.�/�/��4�4�4�����b���2�&�&�&��a�!�,�,������a���$�q�v�v�x�x�.�.�1�1�1����)�T�4�0�0�0����)�T�2�.�.�.����w�/�/�/��	��1�X�X�
$�
$�������
�#�#�#�#�
$�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��
	����T�!�W�W�&I�&I�&I�J�J�J�
�F�F�1�a�L�L�L����T�!�W�W�@�@�@�
B�
B�
B�
�G�G�I�I�I�
��v��������
�
�
����
�����
�G�G�I�I�I�
��v�������
�
�
���
������sO�*F�F�6A I�+I�
I�I�J
�(I=�<J
�=
J
�J
�	J
�
J
c�p�|�ttd����d��|�ttd����d��|�tg��d��|�td��d��|�td��d��ddd	d
�}|�t|��t|�������|�t
tt��|�t
td��ttdd
���}	td��D]}|�
d|z���	|���n#|���wxYwttdd
���}	|�t|��d��|�dd��|�t|��d��|���	tt��dS#t$rYdSwxYw#|���	tt��w#t$rYwwxYwxYw)Nr��rr	r
r�r�rrrt�r�rrr	r
r�r6r:r$r%r&r(r)r*)rbr�r6r r�r�rvr/rrmr0r1r;rr2r<s    r�test_builtin_tuplezTestCase.test_builtin_tuple�sq������}�Q�/�/�0�0�/�B�B�B�����}�Q�/�/�0�0�"�5�5�5�����r���B�'�'�'�����r���B�'�'�'�����u����7�7�7��a�!�,�,������q���5������?�?�3�3�3����)�U�D�1�1�1����)�U�B�/�/�/����w�/�/�/��	��1�X�X�
$�
$�������
�#�#�#�#�
$�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��
	����U�1�X�X�'J�K�K�K�
�F�F�1�a�L�L�L����U�1�X�X�@�
B�
B�
B�
�G�G�I�I�I�
��v��������
�
�
����
�����
�G�G�I�I�I�
��v�������
�
�
���
������sO�1*F1�1G�"AI:�I)�)
I7�6I7�:J5�J%�$J5�%
J2�/J5�1J2�2J5c
��|�ttdtd������tt	dd������|�ttdtd������g��|�ttdd����g��|�ttdd����gd���dddd	�}|�ttd|����t|�������|�ttdt��|�ttdd
��Gd�d��}|d
��}|d��}Gd�d��}|||gdz�}|�ttd�|����|gdz��|�ttd�t|������|gdz��dS)Nr�r	rrrtr@r
r�r6r:c��eZdZd�Zd�ZdS)�-TestCase.test_builtin_filter.<locals>.Booleanc��||_dSr��truth)rrGs  rrz6TestCase.test_builtin_filter.<locals>.Boolean.__init__s
��"��
�
�
rc��|jSrrFrs r�__bool__z6TestCase.test_builtin_filter.<locals>.Boolean.__bool__!s
���z�!rN)r#r$r%rrIrrr�BooleanrDs2������
#�
#�
#�
"�
"�
"�
"�
"rrJTFc��eZdZd�Zd�ZdS)�)TestCase.test_builtin_filter.<locals>.Seqc��||_dSr��vals)r�argss  rrz2TestCase.test_builtin_filter.<locals>.Seq.__init__'s
�� ��	�	�	rc�<�Gd�d��}||j��S)Nc� �eZdZd�Zd�Zd�ZdS)�CTestCase.test_builtin_filter.<locals>.Seq.__iter__.<locals>.SeqIterc�"�||_d|_dSr)rOr)rrOs  rrzLTestCase.test_builtin_filter.<locals>.Seq.__iter__.<locals>.SeqIter.__init__+s��$(��	�!"����rc��|Srrrs rr zLTestCase.test_builtin_filter.<locals>.Seq.__iter__.<locals>.SeqIter.__iter__.s��#�rc�|�|j}|dz|_|t|j��kr
|j|St�r)r�lenrOrr1s  rrzLTestCase.test_builtin_filter.<locals>.Seq.__iter__.<locals>.SeqIter.__next__0s9�� �F��!"�Q�����s�4�9�~�~�-�-�#'�9�Q�<�/�"/�/rN�r#r$r%rr rrrr�SeqIterrS*sA������#�#�#�$�$�$�0�0�0�0�0rrYrN)rrYs  rr z2TestCase.test_builtin_filter.<locals>.Seq.__iter__)s>��0�0�0�0�0�0�0�0��w�t�y�)�)�)rNr,rrr�SeqrL&s2������
!�
!�
!�
*�
*�
*�
*�
*rrZ�c��|Srr�r�s rr�z.TestCase.test_builtin_filter.<locals>.<lambda>:���1�u�rc��|Srrr]s rr�z.TestCase.test_builtin_filter.<locals>.<lambda>;r^r)	rbrv�filterr6rmr r�r�ri)rryrJ�bTrue�bFalserZrds       r�test_builtin_filterzTestCase.test_builtin_filters3������f�T�=��+;�+;�<�<�=�=��e�A�q�k�k�*�*�	,�	,�	,�����f�T�=��+;�+;�<�<�=�=�r�B�B�B�����f�T�2�.�.�/�/��4�4�4�����f�T�5�1�1�2�2�O�O�O�D�D�D��a�!�,�,������f�T�1�o�o�.�.��Q�V�V�X�X���?�?�?����)�V�T�4�8�8�8����)�V�T�2�6�6�6�	"�	"�	"�	"�	"�	"�	"�	"�
���
�
��������	*�	*�	*�	*�	*�	*�	*�	*�&�c�U�F�O�b�(�*������f�_�_�c�:�:�;�;�f�X�b�[�I�I�I�����f�_�_�d�3�i�i�@�@�A�A�F�8�B�;�O�O�O�O�Orc��|�ttd����d��|�ttd����d��|�tdd��d��|�tdd��d��dddd	�}|�t|��d
��|�t|��d��|�t|�����d��|�tt|�������d��t
tdd
���}	|�d��|�d��|�d��|�	��n#|�	��wxYwt
tdd
���}	|�t|��d��|�
dd��|�t|��d��|�	��	tt��dS#t$rYdSwxYw#|�	��	tt��w#t$rYwwxYwxYw)Nr�r�rr����r	r
r�r6r8r7r$r%r&zmedium line
zxtra large line
zitty-bitty line
r))
rb�maxr6�min�valuesrir/rr0r1r;rr2)rryr3s   r�test_builtin_max_minzTestCase.test_builtin_max_min>s�������]�1�-�-�.�.��2�2�2�����]�1�-�-�.�.��2�2�2�����Q����Q�'�'�'�����Q����R�(�(�(��a�!�,�,������Q����'�'�'�����Q����'�'�'�����Q�X�X�Z�Z���!�,�,�,�����T�!�(�(�*�*�-�-�.�.��2�2�2����w�/�/�/��	�
�G�G�O�$�$�$�
�G�G�'�(�(�(�
�G�G�'�(�(�(�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��		����S��V�V�%8�9�9�9�
�F�F�1�a�L�L�L����S��V�V�%8�9�9�9�
�G�G�I�I�I�
��v��������
�
�
����
�����
�G�G�I�I�I�
��v�������
�
�
���
������sO�?G�G.�	AJ!�:J�
J�J�!K�7K�K�
K�K�K�Kc
����|�ttd�td������tt	dd������dddd��|�tt�fd������t��������t���������fd	�t	d��D��}ttd
d���}	t	d
��D]}|�	d|zdz���	|�
��n#|�
��wxYwttdd���}	|�ttt|����tt	ddd������|�
��	tt��dS#t$rYdSwxYw#|�
��	tt��w#t$rYwwxYwxYw)Nc��|dzSrrr]s rr�z+TestCase.test_builtin_map.<locals>.<lambda>_s
��A�a�C�rr�r	r�r
r�r6c��|||fSrr)r�rys  rr�z+TestCase.test_builtin_map.<locals>.<lambda>cs��!�Q�q�T��rc���g|]=}|t���kr�|pd||t���kr�|pdf��>Sr)rW)r�rry�dkeyss  ��rr�z-TestCase.test_builtin_map.<locals>.<listcomp>fsf���'�'�'����Q���Z�,�E�!�H�4�����Q���Z�,�E�!�H�4��6�'�'�'rr$r%r&r|�xy�
r)�)rbrv�mapr6rmr�r r/rr0r1rWrr2)r�expectedr3rryrns    @@r�test_builtin_mapzTestCase.test_builtin_map^s:��������c�-�-��q�1A�1A�B�B�C�C��e�A�q�k�k�*�*�	,�	,�	,��a�!�,�,������c�a�":�":�":�A�>�>�?�?��a�g�g�i�i���	*�	*�	*��Q�V�V�X�X����'�'�'�'�'�#�1�X�X�'�'�'��

���w�/�/�/��	��2�Y�Y�
)�
)������q��4��(�(�(�(�
)�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��	����T�#�c�1�+�+�.�.��U�1�b�!�_�_�0E�0E�F�F�F�
�G�G�I�I�I�
��v��������
�
�
����
�����
�G�G�I�I�I�
��v�������
�
�
���
������sO�-E�E$�?AH
�&G<�<
H
�	H
�
I�#H8�7I�8
I�I�I�Ic�p
�|�tt����g��|�ttg���g��|�ttddg���ddg��|�ttd��|�tttd��d��|�tttd��t��|�ttt
d������gd���|�tttd������gd���d	d
dd�}|�t|�����tt||�	��������Gd�d
��}ttdd���}	|�d��|�
��n#|�
��wxYwttdd���}	|�tt|d��||d������gd���|�
��	tt��nN#t$rYnBwxYw#|�
��	tt��w#t$rYwwxYwxYw|�tttd������d�td��D����Gd�d��}Gd�d|��}Gd�d|��}d�}|�t!|����d��|�t!|����d��|�||����|td������|�||����|td������|�||����|td������d �td��D��}|��|��|��fD]B}	|��|��|��fD]"}
|�||	|
��|���#�CdS)!N�r	r
�ab)r	r�)r
rr|r:r�)�r)r	)r
r	r
r6c� �eZdZd�Zd�Zd�ZdS)�+TestCase.test_builtin_zip.<locals>.IntsFromc��||_dSrr0)r�starts  rrz4TestCase.test_builtin_zip.<locals>.IntsFrom.__init__�s
������rc��|Srrrs rr z4TestCase.test_builtin_zip.<locals>.IntsFrom.__iter__�r�rc�(�|j}|dz|_|Srr0r1s  rrz4TestCase.test_builtin_zip.<locals>.IntsFrom.__next__�s���F���1�����rNrXrrr�IntsFromrz�sA������
�
�
�
�
�
�
�
�
�
�
rrr$r%r&z	a
bbb
cc
r)r���))r�a
r�)r	zbbb
i����)r
zcc
i����r�c��g|]}|f��Srr�r�rs  rr�z-TestCase.test_builtin_zip.<locals>.<listcomp>�s��.F�.F�.F���t�.F�.F�.Frc��eZdZd�ZdS)�.TestCase.test_builtin_zip.<locals>.NoGuessLen5c� �|dkrt�|S�Nr�)r9r1s  rr:z:TestCase.test_builtin_zip.<locals>.NoGuessLen5.__getitem__�s����6�6�$�$��rNrFrrr�NoGuessLen5r��s#������
�
�
�
�
rr�c��eZdZd�ZdS)�-TestCase.test_builtin_zip.<locals>.Guess3Len5c��dSr�rrs rrZz5TestCase.test_builtin_zip.<locals>.Guess3Len5.__len__�s���qrN�r#r$r%rZrrr�
Guess3Len5r��s#������
�
�
�
�
rr�c��eZdZd�ZdS)�.TestCase.test_builtin_zip.<locals>.Guess30Len5c��dS)N�rrs rrZz6TestCase.test_builtin_zip.<locals>.Guess30Len5.__len__�s���rrNr�rrr�Guess30Len5r��s#������
�
�
�
�
rr�c�.�tt|���Sr)rv�zip)rPs r�lzipz'TestCase.test_builtin_zip.<locals>.lzip�s����T�
�#�#�#rr�c��g|]}||f��Srrr�s  rr�z-TestCase.test_builtin_zip.<locals>.<listcomp>�s��-�-�-�q�Q��F�-�-�-r)rbrvr�r�r�rmr'r6r�rhr/rr0r1rr2rW)rryrr3r�r�r�r�rsr��ys           r�test_builtin_zipzTestCase.test_builtin_zip|s<������c�e�e���b�)�)�)�����c�2�h����,�,�,�����c�F�D�>�2�3�3�h��5I�J�J�J����)�S�$�/�/�/����)�S�%��)�)�R�8�8�8����)�S�%��)�)�S�9�9�9�����c�"8��";�";�<�<�=�=�+�+�+�	-�	-�	-�����c�-��"2�"2�3�3�4�4�+�+�+�	-�	-�	-��a�!�,�,������a�g�g�i�i���$�s�1�a�h�h�j�j�/A�/A�*B�*B�C�C�C�
	�
	�
	�
	�
	�
	�
	�
	�
���w�/�/�/��	�
�G�G�(�)�)�)�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��
	����T�#�h�h�q�k�k�1�h�h�t�n�n�"E�"E�F�F�0�0�0�
1�
1�
1�

�G�G�I�I�I�
��v�������
�
�
���
�����
�G�G�I�I�I�
��v�������
�
�
���
�������	
����c�%��(�(�m�m�,�,�.F�.F�U�1�X�X�.F�.F�.F�G�G�G�	�	�	�	�	�	�	�	�	�	�	�	�	��	�	�	�	�	�	�	�	�+�	�	�	�	$�	$�	$�	
����Z�Z�\�\�*�*�A�.�.�.�����[�[�]�]�+�+�R�0�0�0������k�k�m�m�,�,�d�d�5��8�8�n�n�=�=�=������j�j�l�l�+�+�T�T�%��(�(�^�^�<�<�<������k�k�m�m�,�,�d�d�5��8�8�n�n�=�=�=�-�-�E�!�H�H�-�-�-������
�
���k�k�m�m�;�	7�	7�A� �[�]�]�J�J�L�L�+�+�-�-�?�
7�
7��� � ���a����X�6�6�6�6�
7�	7�	7sO�I�I�2AK2�
K"�"
K/�.K/�2L-�L�L-�
L*�'L-�)L*�*L-c�^�Gd�d��}ttdd���}	|�d��|���n#|���wxYwttdd���}	d�||����}|�|d	��|���	t
t��dS#t$rYdSwxYw#|���	t
t��w#t$rYwwxYwxYw)
Nc� �eZdZd�Zd�Zd�ZdS)�4TestCase.test_unicode_join_endcase.<locals>.OhPhooeyc�<�t|��|_d|_dSr)rircr)rrds  rrz=TestCase.test_unicode_join_endcase.<locals>.OhPhooey.__init__�s���s�)�)�������rc��|Srrrs rr z=TestCase.test_unicode_join_endcase.<locals>.OhPhooey.__iter__�r�rc�\�|j}|dz|_|dkrdSt|j��S)Nr	r
zfooled you!)rr3rcr1s  rrz=TestCase.test_unicode_join_endcase.<locals>.OhPhooey.__next__�s0���F���1������6�6�(�=��D�G�}�}�$rNrXrrr�OhPhooeyr��sA������
�
�
�
�
�
�
%�
%�
%�
%�
%rr�r$r%r&�a
b
c
r)z - za
 - b
 - fooled you! - c
)r/rr0r1�joinrbrr2)rr�r3�gots    r�test_unicode_join_endcasez"TestCase.test_unicode_join_endcase�sJ��
	%�
	%�
	%�
	%�
	%�
	%�
	%�
	%�
���w�/�/�/��	�
�G�G�)�*�*�*�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��	��*�*�X�X�a�[�[�)�)�C����S�"A�B�B�B�
�G�G�I�I�I�
��v��������
�
�
����
�����
�G�G�I�I�I�
��v�������
�
�
���
������sM�A�A&�4C1�
C � 
C.�-C.�1D,�D�D,�
D)�&D,�(D)�)D,c
��td��td��fD]P}td��D]}|�||���dddddgddid|f	D]}|�||����Q|�t
t
tdg������|�t
tdg����|�t
t
ttg������|�t
ttg����|�tt
tt
g������|�ttt
g����|�
td���|�
td	���|�
td
���dddd
d�}|D]@}|�||��|�||�
�����A|�
��D]@}|�||�
����|�||���A|���D]Y\}}|�||f|�����|�||f|������Ztt dd���}	|�d��|���n#|���wxYwtt dd���}	dD]]}|�dd��|�||��|�dd��|�|dz|���^	|���	t)t ��dS#t*$rYdSwxYw#|���	t)t ��w#t*$rYwwxYwxYw)Nr�rtreg�(\��5E@)r�r�r	y@(�c�
�ddvS)Nr��rrrrr�z-TestCase.test_in_and_not_in.<locals>.<lambda>s
��Q�"�W�rc��dtvSr�)rrrrrr�z-TestCase.test_in_and_not_in.<locals>.<lambda>s
��Q�c�\�rc�"�dt��vSr�)rMrrrr�z-TestCase.test_in_and_not_in.<locals>.<lambda>s��Q�:J�:L�:L�5L�rr
r��@�r7r8r9��?r$r%r&r�r)rrp)r'r6rm�assertIn�assertNotInrr.rir=rr�r�rOrhr�r/rr0r1r;rr2)r�sc5rryr��vr3�chunks        r�test_in_and_not_inzTestCase.test_in_and_not_in�s��)�!�,�,�m�A�.>�.>�>�	)�	)�C��1�X�X�
&�
&���
�
�a��%�%�%�%��B��5�&�"�q�!�f�e�S�H�
)�
)��� � ��C�(�(�(�(�
)�	
�
�
�i�!3�D�!��I�I�!>�!>�?�?�?��
�
�i�!3�Q�C�!8�!8�9�9�9�����$6�t�X�J�7G�7G�$H�$H�I�I�I�����$6��z�$B�$B�C�C�C��
�
�h� 2�4���3D�3D� E� E�F�F�F��
�
�h� 2�I�;� ?� ?�@�@�@����)�_�_�5�5�5����)�%9�%9�:�:�:����+�-L�-L�M�M�M��a�!��4�4���	,�	,�A��M�M�!�Q�������Q����
�
�+�+�+�+������	#�	#�A��M�M�!�Q�X�X�Z�Z�(�(�(����Q��"�"�"�"��G�G�I�I�	0�	0�D�A�q��M�M�1�a�&�!�'�'�)�)�,�,�,����a��V�Q�W�W�Y�Y�/�/�/�/����w�/�/�/��	�
�G�G�%�&�&�&�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��	��
1�
1�����q�!����� � ���*�*�*����q�!�����
�
�u�t�|�a�0�0�0�0�	
1�
�G�G�I�I�I�
��v��������
�
�
����
�����
�G�G�I�I�I�
��v�������
�
�
���
������sO�M�M�5A P�+P�
P�P�Q
�(P=�<Q
�=
Q
�Q
�	Q
�
Q
c�h�ddlm}|�|gd�d��d��|�|dd��d��|�|dd��d��|�|dd��d��|�t|d	d
��|�t|||��ddddd�}|D]"}|�|||��d
���#|�||���d��d��|�||���d��d
��|�||���d
��d��t
tdd���}	|�d��|�	��n#|�	��wxYwt
tdd���}	dD]>\}}|�
dd��|�|||dz��|���?	|�	��	tt��dS#t$rYdSwxYw#|�	��	tt��w#t$rYwwxYwxYw)Nr)�countOf�r	r
r
r�r
r�r
r��122325�2�6r:r	r�r�r�r$r%r&za
b
c
b
r)))r�r	)rr
)rr	)ryrrp)
�operatorr�rbr�r�rhr/rr0r1r;rr2)rr�ryr�r3�letter�counts       r�test_countOfzTestCase.test_countOf&s���$�$�$�$�$�$����������2�2�A�6�6�6��������2�2�A�6�6�6�������3�/�/��3�3�3�������3�/�/��3�3�3����)�W�b�!�4�4�4����)�W�g�w�?�?�?��a�!��4�4���	/�	/�A����W�W�Q��]�]�A�.�.�.�.�����������Q�/�/��3�3�3�����������R�0�0�!�4�4�4�����������R�0�0�!�4�4�4����w�/�/�/��	�
�G�G�+�,�,�,�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��		�!G�
C�
C�
������q�!����� � ����F�T�M�!:�!:�E�B�B�B�B�
C�
�G�G�I�I�I�
��v��������
�
�
����
�����
�G�G�I�I�I�
��v�������
�
�
���
������sO�G�G�8AI6�I%�%
I3�2I3�6J1�J!� J1�!
J.�+J1�-J.�.J1c��ddlm}|�|gd�d��d��|�|dd��d��|�|dd��d��|�|dd��d��|�t|dd��|�t|dd��|�|d	d
��d��|�|d	d��d��|�t|d	d��|�t
|d
d��|�t
|||��|�t|t��d��ttdd���}	|�
d��|���n#|���wxYwttdd���}	t|��}|�||d��d��|�||d��d��|�||d��d��|�t||d��|���	tt��nN#t$rYnBwxYw#|���	tt��w#t$rYwwxYwxYwtd��}t!d��D]"}|�|||��|���#|�t||d��dS)Nr)�indexOfr�r	r
r�r�r�r�r��5r�r:r$r%r&z
a
b
c
d
e
r)zb
zd
ze
r�re)r�r�rbr��
ValueErrorr�rOrMr/rr0r1rirr2r'rm)rr�r3�fiter�iclassrs      r�test_indexOfzTestCase.test_indexOfIsf��$�$�$�$�$�$����������2�2�A�6�6�6��������2�2�A�6�6�6��������2�2�A�6�6�6��������2�2�A�6�6�6����*�g�}�a�@�@�@����*�g�}�a�@�@�@�������3�/�/��3�3�3�������3�/�/��3�3�3����*�g�x��=�=�=����)�W�b�!�4�4�4����)�W�g�w�?�?�?����+�W�6F�6H�6H�!�L�L�L����w�/�/�/��	�
�G�G�1�2�2�2�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��	���G�G�E����W�W�U�E�2�2�A�6�6�6����W�W�U�E�2�2�A�6�6�6����W�W�U�E�2�2�A�6�6�6����j�'�5�%�@�@�@�
�G�G�I�I�I�
��v�������
�
�
���
�����
�G�G�I�I�I�
��v�������
�
�
���
�������(��*�*���q���	4�	4�A����W�W�V�Q�/�/��3�3�3�3����*�g�v�r�:�:�:�:�:sO�G�G�6BJ<�J,�,
J9�8J9�<K7�K'�&K7�'
K4�1K7�3K4�4K7c���ttdd���}	|�t|jd��|�t|jd��|�ddg��|�d��|�ddi��|�i��Gd	�d
���G�fd�d��}|�|d
d����|���ttd���}d�t
dd��D��}|�t|��|��|���	tt��dS#t$rYdSwxYw#|���	tt��w#t$rYwwxYwxYw)Nr$r%r&r:r+r,)r-r.z5
c� �eZdZd�Zd�Zd�ZdS)�*TestCase.test_writelines.<locals>.Iteratorc�:�||_||_|j|_dSr)r|�finishr�rr|r�s   rrz3TestCase.test_writelines.<locals>.Iterator.__init__�s��!&�D�J�"(�D�K�!�Z�D�F�F�Frc��|j|jkrt�t|j��dz}|xjdz
c_|S)Nrpr	)rr�r�str)r�results  rrz3TestCase.test_writelines.<locals>.Iterator.__next__�s=���v���,�,�+�+� ���[�[�4�/�F��F�F�a�K�F�F�!�Mrc��|Srrrs rr z3TestCase.test_writelines.<locals>.Iterator.__iter__�s���KrNr"rrrrur��sA������(�(�(�
"�"�"� � � � � rruc� ��eZdZd�Z�fd�ZdS)�*TestCase.test_writelines.<locals>.Whateverc�"�||_||_dSr�r|r�r�s   rrz3TestCase.test_writelines.<locals>.Whatever.__init__�s��!&�D�J�"(�D�K�K�Krc�0���|j|j��Srr�)rrus �rr z3TestCase.test_writelines.<locals>.Whatever.__iter__�s���#�8�D�J���<�<�<rNr,)rus�r�Whateverr��s=�������)�)�)�=�=�=�=�=�=�=rr�r�i�c�2�g|]}t|��dz��S)rp)r�r�s  rr�z,TestCase.test_writelines.<locals>.<listcomp>�s"��>�>�>�!��A����
�>�>�>rr	)r/rr�r��
writelinesr1rmrbrvrr2)rr3r�rsrus    @r�test_writelineszTestCase.test_writelinesss�������w�/�/�/��.	����i���t�<�<�<����i���r�:�:�:�
�L�L�%���(�(�(�
�L�L��(�(�(�
�L�L�%���'�'�'�
�L�L�����
 �
 �
 �
 �
 �
 �
 �
 � 
=�
=�
=�
=�
=�
=�
=�
=�
=�
=�
�L�L���!�V�,�,�-�-�-�
�G�G�I�I�I��V�g�.�.�.�A�>�>�u�Q��~�~�>�>�>�H����T�!�W�W�h�/�/�/�
�G�G�I�I�I�
��v��������
�
�
����
�����
�G�G�I�I�I�
��v�������
�
�
���
������sB�D<F�+F�
F�F�G
�(F=�<G
�=
G
�G
�	G
�
G
c���d\}}|�||fd��td��\}}}|�|||fd��	td��\}}|�d��n#t$rYnwxYw	td��\}}}|�d��n#t$rYnwxYw	t\}}}|�d��n#t
$rYnwxYwdddd����\}}}|�|||fd	��ttd
d���}d
}	|D]}|�	|���	|�
��n#|�
��wxYwttdd���}	|\}}}|�|||f|��|�
��	tt��nN#t$rYnBwxYw#|�
��	tt��w#t$rYwwxYwxYwtd��ddic\}}\}|�|||fd��dS)Nrvr�rzshould have raised ValueErrorr
zshould have raised TypeErrorr:r�)r:r:r:r$r%r&)r�zbb
zccc
r)�)rr	r:)
rbr'rr�rWr�rhr/rr0r1rr2)rr�rrr3�lines�lines       r�test_unpack_iterzTestCase.test_unpack_iter�s������1����!�Q���(�(�(�(��+�+���1�a����!�Q���I�.�.�.�	7�)�!�,�,�D�A�q�
�I�I�5�6�6�6�6���	�	�	��D�	����
	7�,�Q�/�/�G�A�q�!�
�I�I�5�6�6�6�6���	�	�	��D�	����
	6��G�A�q�!�
�I�I�4�5�5�5�5���	�	�	��D�	����
�R�B�'�'�.�.�0�0���1�a����!�Q���L�1�1�1����w�/�/�/��(��	��
�
������
�
�
�
�
�
�G�G�I�I�I�I��A�G�G�I�I�I�I�������w�/�/�/��	��G�A�q�!����a��A�Y��.�.�.�
�G�G�I�I�I�
��v�������
�
�
���
�����
�G�G�I�I�I�
��v�������
�
�
���
�������.�a�0�0�2�r�(����A������!�Q���J�/�/�/�/�/s��A3�3
B�?B�B-�-
B:�9B:�>C�
C,�+C,�>E.�.F�G8�G(�(
G5�4G5�8H3�H#�"H3�#
H0�-H3�/H0�0H3c��Gd�dt��}|��}|�|jd��~|�|jd��|��|��|��g}|�|jd��	t|��\}}n#t$rYnwxYw~|�|jd��dS)Nc��eZdZdZd�Zd�ZdS)�.TestCase.test_ref_counting_behavior.<locals>.Crc�V�|xjdz
c_t�|��Sr)r�r��__new__)�clss rr�z6TestCase.test_ref_counting_behavior.<locals>.C.__new__�s#���	�	�Q��	�	��~�~�c�*�*�*rc�4�|j}|xjdzc_dSr)�	__class__r�)rr�s  r�__del__z6TestCase.test_ref_counting_behavior.<locals>.C.__del__�s���n���	�	�Q��	�	�	�	rN)r#r$r%r�r�r�rrr�Cr��s7�������E�
+�
+�
+�
�
�
�
�
rr�r	rr�)r�rbr�rir�)rr�r��lr�rs      r�test_ref_counting_behaviorz#TestCase.test_ref_counting_behavior�s���	�	�	�	�	��	�	�	�
�A�C�C�������!�$�$�$�
������!�$�$�$�
�Q�S�S�!�!�#�#�q�q�s�s�O�������!�$�$�$�	���7�7�D�A�q�q���	�	�	��D�	����
������!�$�$�$�$�$s�B!�!
B.�-B.c�b�ttd����}t|��}|�t|��ttd������|�tdd����|�t|��g��dS�Nr�r|)rvrmrirb�extend�rr�rs   r�test_sinkstate_listzTestCase.test_sinkstate_list�s�����q���N�N����G�G������a���$�u�Q�x�x�.�.�1�1�1�	����q�"����������a���"�%�%�%�%�%rc���d}t|��}|�t|��ttd������|�t|��g��dS)Nr?r��rirbrvrmr�s   r�test_sinkstate_tuplezTestCase.test_sinkstate_tuples\������G�G������a���$�u�Q�x�x�.�.�1�1�1�����a���"�%�%�%�%�%rc��d}t|��}|�t|��gd���|�t|��g��dSr)rirbrvr�s   r�test_sinkstate_stringzTestCase.test_sinkstate_stringsW������G�G������a���";�";�";�<�<�<�����a���"�%�%�%�%�%rc��td��}t|��}|�t|��tt	d������d|_|�t|��g��dSr�)r6rirbrvrmrr�s   r�test_sinkstate_sequencez TestCase.test_sinkstate_sequencesk���!������G�G������a���$�u�Q�x�x�.�.�1�1�1��������a���"�%�%�%�%�%rc���dgfd�}t|d��}|�t|��ttd������|�t|��g��dS)Nrc�P�|d}|dz|d<|dkrtd���|S)Nrr	r|zshouldn't have gotten this far)�AssertionErrorr�s  rr�z.TestCase.test_sinkstate_callable.<locals>.spams5���a��A���s�E�!�H��B�w�w�$�%E�F�F�F��Hrr�r�)rr�rs   r�test_sinkstate_callablez TestCase.test_sinkstate_callablest���s�	�	�	�	�
��q�M�M������a���$�u�Q�x�x�.�.�1�1�1�����a���"�%�%�%�%�%rc�r�dddddd�}t|��|���|���|���fD]d}t|��}|�tt
|����d��|�t
|��g���edS)Nr	r
rr�r�)r	r
rr�r�r�)rir r�rhrbrWrvr�s   r�test_sinkstate_dictzTestCase.test_sinkstate_dict"s����A��a�1�%�%���a���!�&�&�(�(�A�G�G�I�I�q�x�x�z�z�9�	*�	*�A��Q���A����S��a���\�\�1�-�-�-����T�!�W�W�b�)�)�)�)�	*�	*rc���d�}|��}|�t|��ttd������|�t|��g��dS)Nc3�6K�td��D]}|V��dSr��rmr0s r�genz*TestCase.test_sinkstate_yield.<locals>.gen,s0�����1�X�X�
�
�������
�
rr�)rbrvrm)rr�rs   r�test_sinkstate_yieldzTestCase.test_sinkstate_yield+sh��	�	�	�
�C�E�E������a���$�u�Q�x�x�.�.�1�1�1�����a���"�%�%�%�%�%rc��td��}t|��}|�t|��ttd������|�t|��g��dSr�)rmrirbrvr�s   r�test_sinkstate_rangezTestCase.test_sinkstate_range3sb���!�H�H����G�G������a���$�u�Q�x�x�.�.�1�1�1�����a���"�%�%�%�%�%rc�V�td��}t|��}t|��}|�t	|��t	ttd��td��������|�t	|��g��dSr�)rm�	enumeraterirbrvr�)rr�rrs    r�test_sinkstate_enumeratez!TestCase.test_sinkstate_enumerate9s���!�H�H���a�L�L����G�G������a���$�s�5��8�8�U�1�X�X�'>�'>�"?�"?�@�@�@�����a���"�%�%�%�%�%rc�p��G�fd�dt���	���D]}�dS#t$rYdSwxYw)Nc� ��eZdZd�Z�fd�ZdS)�'TestCase.test_3720.<locals>.BadIteratorc��|Srrrs rr z0TestCase.test_3720.<locals>.BadIterator.__iter__Cr�rc����`dSr)r)r�BadIterators �rrz0TestCase.test_3720.<locals>.BadIterator.__next__Es����(��qrN)r#r$r%r r)rs�rrrBs=�������
�
�
�
�
�
�
�
�
�
rr)r�r�)rrrs  @r�	test_3720zTestCase.test_3720@s����	�	�	�	�	�	�	�&�	�	�	�	� �[�]�]�
�
���
�
���	�	�	��D�D�	���s�
'�
5�5c���d�}dgdz}td��D]}|�d���|�|����|�t	|��d��dS)Nc3�6K�td��D]}|V��dS)N��r�r0s rr�zITestCase.test_extending_list_with_iterator_does_not_segfault.<locals>.genUs0�����3�Z�Z�
�
�������
�
rrr��i�)rm�popr�rbrW)rr��lstrs    r�3test_extending_list_with_iterator_does_not_segfaultz<TestCase.test_extending_list_with_iterator_does_not_segfaultOs~��	�	�	��c�C�i���s���	�	�A��G�G�A�J�J�J�J��
�
�3�3�5�5��������S���3�'�'�'�'�'rc�F�tt����}|�tjdz
��|�t
|��tjdz
��|�t
|��tjdz
��|�t��5t
|��ddd��n#1swxYwY|�t��5t
|��ddd��dS#1swxYwYdS)Nr
r	)	rirC�__setstate__�sys�maxsizerbr3r��
OverflowError�rrcs  r�test_iter_overflowzTestCase.test_iter_overflow^sm���(�*�*�
+�
+��
�����a��(�(�(�����b���3�;��?�3�3�3�����b���3�;��?�3�3�3�
�
�
�}�
-�
-�	�	���H�H�H�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	��
�
�}�
-�
-�	�	���H�H�H�	�	�	�	�	�	�	�	�	�	�	�	����	�	�	�	�	�	s$�8C�C�C�9D�D�Dc���tt����}|�d��|�t	|��d��|�t	|��d��dS)Ni���rr	)rirCrrbr3rs  r�test_iter_neg_setstatezTestCase.test_iter_neg_setstatelsf��
�(�*�*�
+�
+��
�����������b���1�%�%�%�����b���1�%�%�%�%�%rc�>�t|ttd��dS)Nrx)rrir6rs r�test_free_after_iteratingz"TestCase.test_free_after_iteratingrs��"�4��}�d�C�C�C�C�Crc���ttfD]+}|�tt|�����,|�t
tt
����dSr)rHrJr�r�rirOrM)r�typs  r�test_error_iterzTestCase.test_error_iterus]��$�k�2�	6�	6�C����i��s�s�u�u�5�5�5�5����+�T�3C�3E�3E�F�F�F�F�FrN)T)?r#r$r%rgrkr`r}r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrr
rrrrrr"r4r=rArcrirtr�r�r�r�r�r�r�rr�r�r�r�r�r�r�r�r�rr	rrrrrrrrr^r^is�������
#�
#�
#�
#�#�#�#�#�0�0�0�(>�>�>�#�#�#�>�>�>�(�(�(�(�(�(�(�(�(�I�I�I�O�O�O�@�@�@�F�F�F�"+�"+�"+�H	9�	9�	9�F*�F*�F*�R8�8�8�Y�Y�Y�K�K�K�K�K�K� � � �49�9�9�"
9�
9�
9� P�P�P�D�D�D�*�*�*�J�J�J�>�>�>�F�F�F�5�5�5����&���>���B*P�*P�*P�Z���@���<M7�M7�M7�^'�'�'�T.�.�.�b � � �F';�';�';�T1�1�1�j20�20�20�j�%�%��\�%�8&�&�&�&�&�&�&�&�&�&�&�&�
&�
&�
&�*�*�*�&�&�&�&�&�&�&�&�&�
�
�
�
(�
(�
(�����\��&�&�&�D�D�D�G�G�G�G�Grr^�__main__)r�unittest�test.supportr�test.support.os_helperrrrrrre�collections.abcrsr�r�r�r�r
r'r.r6r=rCrHrJrMrRrXr^r#�mainrrr�<module>r%s����
�
�
�����%�%�%�%�%�%�1�1�1�1�1�1�1�1�H�H�H�H�H�H�H�H�H�H�
�
�
�
�����������������
-�
-�
-����������&�&�&�&�&�&�&�&���������������������������������	�	�	�	�	�	�	�	���������
 � � � � � � � �����������������OG�OG�OG�OG�OG�x� �OG�OG�OG�d �z����H�M�O�O�O�O�O��r