Uname: Linux web3.us.cloudlogin.co 5.10.226-xeon-hst #2 SMP Fri Sep 13 12:28:44 UTC 2024 x86_64
Software: Apache
PHP version: 8.1.31 [ PHP INFO ] PHP os: Linux
Server Ip: 162.210.96.117
Your Ip: 3.137.149.111
User: edustar (269686) | Group: tty (888)
Safe Mode: OFF
Disable Function:
NONE

name : test_iter.cpython-310.pyc
o

ab���@sddlZddlZddlmZddlmZmZddlmZmZm	Z	ddl
Z
ddlZgd�Z
Gdd�d�ZGdd	�d	�ZGd
d�d�ZGdd
�d
�ZGdd�d�ZGdd�d�ZGdd�d�ZGdd�d�ZGdd�d�ZGdd�dej�Zedkr~e��dSdS)�N)�cpython_only)�TESTFN�unlink)�check_free_after_iterating�	ALWAYS_EQ�NEVER_EQ))rrr)rr�)rr�)rrr)rrr�rrr	)rr	r)rr	r)rr	r	)rrr)rrr)rrr	)rrr)rrr)rrr	)rr	r)rr	r)rr	r	)r	rr)r	rr)r	rr	)r	rr)r	rr)r	rr	)r	r	r)r	r	r)r	r	r	c@�$eZdZdd�Zdd�Zdd�ZdS)�BasicIterClasscC�||_d|_dS�Nr)�n�i��selfr�r�7/usr/local/python-3.10/lib/python3.10/test/test_iter.py�__init__�
zBasicIterClass.__init__cCs"|j}||jkr
t�|d|_|S�Nr)rr�
StopIteration�r�resrrr�__next__s


zBasicIterClass.__next__cC�|S�Nr�rrrr�__iter__$�zBasicIterClass.__iter__N��__name__�
__module__�__qualname__rrrrrrrrsrc@�eZdZdd�Zdd�ZdS)�IteratingSequenceClasscC�
||_dSr�rrrrrr(�
zIteratingSequenceClass.__init__cC�
t|j�Sr)rrrrrrr*r)zIteratingSequenceClass.__iter__N�r"r#r$rrrrrrr&'�r&c@r)�IteratorProxyClasscCr'r�r�rrrrrr.r)zIteratorProxyClass.__init__cCr*r)�nextrrrrrr0r)zIteratorProxyClass.__next__cCrrrrrrrr2r zIteratorProxyClass.__iter__Nr!rrrrr--sr-c@r%)�
SequenceClasscCr'rr(rrrrr6r)zSequenceClass.__init__cCs"d|kr|jkr|St�t�r)r�
IndexErrorr/rrr�__getitem__8s�zSequenceClass.__getitem__N�r"r#r$rr3rrrrr15r,r1c@r%)�SequenceProxyClasscCr'r��s)rr7rrrr?r)zSequenceProxyClass.__init__cCs
|j|Srr6r/rrrr3Ar)zSequenceProxyClass.__getitem__Nr4rrrrr5>r,r5c@�eZdZdd�ZdS)�UnlimitedSequenceClasscC�|Srrr/rrrr3Er z"UnlimitedSequenceClass.__getitem__N�r"r#r$r3rrrrr9D�r9c@seZdZdS)�DefaultIterClassN)r"r#r$rrrrr=Hsr=c@seZdZdd�ZdZdS)�NoIterClasscCr:rrr/rrrr3Lr zNoIterClass.__getitem__N)r"r#r$r3rrrrrr>Ksr>c@r8)�BadIterableClasscCst�r)�ZeroDivisionErrorrrrrrQr zBadIterableClass.__iter__N�r"r#r$rrrrrr?Pr<r?c@s�eZdZdudd�Zdudd�Zdd�Zdd	�Zd
d�Zdd
�Zdd�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�Zdd�Zd d!�Zd"d#�Zd$d%�Zd&d'�Zd(d)�Zd*d+�Zd,d-�Zd.d/�Zd0d1�Zd2d3�Zd4d5�Zd6d7�Zd8d9�Zd:d;�Zd<d=�Z d>d?�Z!d@dA�Z"dBdC�Z#dDdE�Z$dFdG�Z%dHdI�Z&dJdK�Z'dLdM�Z(dNdO�Z)dPdQ�Z*dRdS�Z+e,dTdU��Z-dVdW�Z.dXdY�Z/dZd[�Z0d\d]�Z1d^d_�Z2d`da�Z3dbdc�Z4ddde�Z5dfdg�Z6dhdi�Z7djdk�Z8e,dldm��Z9dndo�Z:dpdq�Z;drds�Z<dtS)v�TestCaseTcCsR|r|�||�g}	zt|�}Wn	tyYq!w|�|�q|�||�dSr)�check_pickler0r�append�assertEqual)r�it�seq�pickler�valrrr�check_iteratorYs�
�zTestCase.check_iteratorcCs<|r
|�t|�|�g}|D]}|�|�q|�||�dSr)rC�iterrDrE)r�exprrGrHrrIrrr�check_for_loopfszTestCase.check_for_loopc	Cs�ttjd�D]K}t�||�}t�|�}|�t|tjj	��|�
t|�|�t�|�}zt|�Wn	t
y:Yqwt�||�}t�|�}|�
t|�|dd��qdSr)�rangerH�HIGHEST_PROTOCOL�dumps�loads�
assertTrue�
isinstance�collections�abc�IteratorrE�listr0r)rZitorgrG�proto�drFrrrrCos

�
�zTestCase.check_picklecC� |�ttd��ttd���dS�N�
)rJrKrNrWrrrr�test_iter_basic�� zTestCase.test_iter_basiccCs.ttd��}t|�}t|�}|�||u�dSr[)rWrNrKrR)rrGrFZit2rrr�test_iter_idempotency�szTestCase.test_iter_idempotencycCrZr[�rMrKrNrWrrrr�test_iter_for_loop�r^zTestCase.test_iter_for_loopcCsVtd�}g}t|�D]}t|�D]}t|�D]
}|�|||f�qqq
|�|t�dS�N�)rNrKrDrE�TRIPLETS)rrGrr�j�krrr�test_iter_independence�s��zTestCase.test_iter_independencecs.td���fdd�t��D�}|�|t�dS)Nrccs2g|]}t��D]}t��D]}|||f�qqqSr)rK��.0rrerf�rGrr�
<listcomp>�s���z<TestCase.test_nested_comprehensions_iter.<locals>.<listcomp>)rNrKrErdrrrjr�test_nested_comprehensions_iter�s

�z(TestCase.test_nested_comprehensions_itercs*td���fdd��D�}|�|t�dS)Nrccs*g|]}�D]}�D]}|||f�q
qqSrrrhrjrrrk�s*z;TestCase.test_nested_comprehensions_for.<locals>.<listcomp>)rNrErdrrrjr�test_nested_comprehensions_for�sz'TestCase.test_nested_comprehensions_forcC�|�td�ttd���dSr[)rMr&rWrNrrrr�test_iter_class_for��zTestCase.test_iter_class_forcC� |�ttd��ttd���dSr[)rJrKr&rWrNrrrr�test_iter_class_iter�r^zTestCase.test_iter_class_itercCrnr[)rMr1rWrNrrrr�test_seq_class_for�rpzTestCase.test_seq_class_forcCrqr[)rJrKr1rWrNrrrr�test_seq_class_iter�r^zTestCase.test_seq_class_itercCs�td�}ttjd�D]�}t|�}t�||f|�}t�|�\}}d|_|�t	|�t	|��|�
t|�ttd���t|�t�||f|�}t�|�\}}d|_|�t	|�t	|��|�
t|�ttdd���tdd�D]}t|�qkt�||f|�}t�|�\}}d|_|�t	|�t	|��|�
t|�ttdd���|�
tt|�t�||f|�}t�|�\}}d|_|�t|tjj��|�
t|�g�qdS)N�r�)r1rNrHrOrKrPrQrZassertIs�typerErWr0�assertRaisesrrRrSrTrUrV)rZorigrXZitorigrYrFrGrrrr�#test_mutating_seq_class_iter_pickle�s8
�z,TestCase.test_mutating_seq_class_iter_picklecCsltd�}t|�}t|�}|D]}t|�qd|_|�t|�g�|�t|�ddg�|�t|�gd��dS)Nrurv�)rrr	rc�rurz)r1rKr0rrErW)r�aZexhitZempit�xrrr�&test_mutating_seq_class_exhausted_iter�s
z/TestCase.test_mutating_seq_class_exhausted_itercCs$Gdd�dt�}|�tt|��dS)Nc@r8)z5TestCase.test_new_style_iter_class.<locals>.IterClasscSrrrrrrrr�r z>TestCase.test_new_style_iter_class.<locals>.IterClass.__iter__NrArrrr�	IterClass�r<r)�objectrx�	TypeErrorrK)rrrrr�test_new_style_iter_class�sz"TestCase.test_new_style_iter_classcCs2Gdd�d�}|jt|�d�ttd��dd�dS)Nc@r%)z&TestCase.test_iter_callable.<locals>.CcSs
d|_dSrr.rrrrr�r)z/TestCase.test_iter_callable.<locals>.C.__init__cSs |j}|d|_|dkrt�|S)Nr�d)rr2r/rrr�__call__�s

z/TestCase.test_iter_callable.<locals>.C.__call__N)r"r#r$rr�rrrr�C�r,r�r\F�rH�rJrKrWrN)rr�rrr�test_iter_callable�s$	zTestCase.test_iter_callablecCs0dgfdd�}|jt|d�ttd��dd�dS)NrcSs|d}|d|d<|S�Nrrr��staterrrr�spam�sz)TestCase.test_iter_function.<locals>.spamr\Fr�r��rr�rrr�test_iter_function�s"zTestCase.test_iter_functioncCs0dgfdd�}|jt|d�ttd��dd�dS)NrcSs$|d}|dkr
t�|d|d<|S)Nrr\r)rr�rrrr�s
z.TestCase.test_iter_function_stop.<locals>.spam�r\Fr�r�r�rrr�test_iter_function_stops"z TestCase.test_iter_function_stopc	Cshdgfdd�}g}zt|d�D]}|�|�qWnty,|�|ttd���YdSw|�d�dS)NrcSs$|d}|d|d<|dkrt�|S)Nrrr\)�RuntimeErrorr�rrrr�s
z.TestCase.test_exception_function.<locals>.spamr�r\�should have raised RuntimeError)rKrDr�rErWrN�fail)rr�rr}rrr�test_exception_functions��z TestCase.test_exception_functionc	CshGdd�dt�}g}z|d�D]}|�|�qWnty,|�|ttd���YdSw|�d�dS)Nc@r8)z9TestCase.test_exception_sequence.<locals>.MySequenceClasscS�|dkrt�t�||�Sr[)r�r1r3r/rrrr3!�zETestCase.test_exception_sequence.<locals>.MySequenceClass.__getitem__Nr;rrrr�MySequenceClass r<r�r�r\r�)r1rDr�rErWrNr�)rr�rr}rrr�test_exception_sequences��z TestCase.test_exception_sequencecCs0Gdd�dt�}|j|d�ttd��dd�dS)Nc@r8)z4TestCase.test_stop_sequence.<locals>.MySequenceClasscSr�r[)rr1r3r/rrrr31r�z@TestCase.test_stop_sequence.<locals>.MySequenceClass.__getitem__Nr;rrrrr�0r<r�r�r\Fr�)r1rMrWrN)rr�rrr�test_stop_sequence/s zTestCase.test_stop_sequencecCrZ)Ni'r`rrrr�test_iter_big_range8r^zTestCase.test_iter_big_rangecCs|�tg�g�dSr�rMrKrrrr�test_iter_empty<szTestCase.test_iter_emptycCs|�td�ttd���dS)N)
rrr	rcr{rurzrv��	r\)rMrKrWrNrrrr�test_iter_tuple@rpzTestCase.test_iter_tuplecCrZr[r`rrrr�test_iter_rangeDr^zTestCase.test_iter_rangecCs|�td�gd��dS�NZabcde)r|�b�crY�er�rrrr�test_iter_stringHszTestCase.test_iter_stringcCs2i}td�D]}d||<q|�|t|����dSr[)rNrMrW�keys)r�dictrrrr�test_iter_dictLs
zTestCase.test_iter_dictcCs�ttddd�}ztd�D]	}|�d|�qW|��n|��wttddd�}z)|j|gd�dd	�|j|gdd	�W|��ztt�WdStyQYdSw|��ztt�WwtyeYww)
N�w�utf-8��encodingru�%d
�r�z0
�1
�2
�3
�4
Fr�)�openrrN�write�closerMr�OSError)r�frrrr�test_iter_fileSs,����zTestCase.test_iter_filecCs\|�ttd��ttd���|�ttd��g�|�td�g�dddd�}|�t|�t|����|�ttt�|�ttd�ttd	d
d�}ztd�D]	}|�	d|�qLW|�
�n|�
�wttd
d
d�}z1|�t|�gd��|�dd�|�t|�gd��W|�
�ztt�WdSt
y�YdSw|�
�ztt�Wwt
y�Yww)Nrurrrr	rc��one�two�three�*r�r�r�r�r�r�)rErWr1rNr�rxr�r�rr�r��seekrr��rrYr�rrrr�test_builtin_listfs@�
����zTestCase.test_builtin_listcCsl|�ttd��d�|�ttd��d�|�tg�d�|�td�d�|�td�d�ddd	d
�}|�t|�t|����|�ttt�|�ttd�ttdd
d�}zt	d�D]	}|�
d|�qXW|��n|��wttdd
d�}z-|�t|�d�|�dd�|�t|�d�W|��zt
t�WdSty�YdSw|��zt
t�Wwty�Yww)Nru�rrr	rcr{rrrU�r|r�r�rr	rcr�r�r�r�r�r�r�r�)rE�tupler1r�rxr�rWr�rrNr�r�r�rr�r�rrr�test_builtin_tuple�sD�
����zTestCase.test_builtin_tuplecCs<|�ttdtd���ttdd���|�ttdtd���g�|�ttdd��g�|�ttdd��gd��dddd	�}|�ttd|��t|����|�ttdt�|�ttdd
�Gdd�d�}|d
�}|d�}Gdd�d�}|||gd�}|�ttdd�|��|gd�|�ttdd�t|���|gd�dS)NrurrrrUr�r	rcr�r�c@r%)z-TestCase.test_builtin_filter.<locals>.BooleancSr'r��truth)rr�rrrr�r)z6TestCase.test_builtin_filter.<locals>.Boolean.__init__cSs|jSrr�rrrr�__bool__�sz6TestCase.test_builtin_filter.<locals>.Boolean.__bool__N)r"r#r$rr�rrrr�Boolean�r,r�TFc@r%)z)TestCase.test_builtin_filter.<locals>.SeqcWr'r��vals)r�argsrrrr�r)z2TestCase.test_builtin_filter.<locals>.Seq.__init__cSsGdd�d�}||j�S)Nc@r)zCTestCase.test_builtin_filter.<locals>.Seq.__iter__.<locals>.SeqItercSr
r)r�r)rr�rrrr�rzLTestCase.test_builtin_filter.<locals>.Seq.__iter__.<locals>.SeqIter.__init__cSrrrrrrrr�r zLTestCase.test_builtin_filter.<locals>.Seq.__iter__.<locals>.SeqIter.__iter__cSs,|j}|d|_|t|j�kr|j|St�r)r�lenr�rr/rrrr�s


zLTestCase.test_builtin_filter.<locals>.Seq.__iter__.<locals>.SeqIter.__next__N�r"r#r$rrrrrrr�SeqIter�sr�r�)rr�rrrr�s

z2TestCase.test_builtin_filter.<locals>.Seq.__iter__Nr+rrrr�Seq�r,r��cS�|Srr�r}rrr�<lambda>��z.TestCase.test_builtin_filter.<locals>.<lambda>cSr�rrr�rrrr��r�)	rErW�filterr1rNr�rxr�rK)rrYr�ZbTrueZbFalser�rGrrr�test_builtin_filter�s"� (zTestCase.test_builtin_filtercCsz|�ttd��d�|�ttd��d�|�tdd�d�|�tdd�d�dddd	�}|�t|�d
�|�t|�d�|�t|���d�|�tt|����d�ttdd
d�}z|�d�|�d�|�d�W|�	�n|�	�wttdd
d�}z-|�t|�d�|�
dd�|�t|�d�W|�	�ztt�WdSty�YdSw|�	�ztt�Wwty�Yww)Nrur{rr����rr	rcr�r�r�r�r�r�zmedium line
zxtra large line
zitty-bitty line
r�)
rE�maxr1�min�valuesrKr�rr�r�r�rr�)rrYr�rrr�test_builtin_max_min�s@

���zTestCase.test_builtin_max_mincsL|�ttdd�td���ttdd���dddd��|�tt�fd	d����t�����t�������fd
d�td�D�}ttdd
d�}ztd�D]}|�	d|d�qKW|�
�n|�
�wttdd
d�}z(|�ttt|��ttddd���W|�
�ztt�WdSt
y�YdSw|�
�ztt�Wwt
y�Yww)NcSs|dSrrr�rrrr���z+TestCase.test_builtin_map.<locals>.<lambda>rurrzr	rcr�cSs|||fSrr)rfrYrrrr��scs>g|]}|t��kr�|pd||t��kr�|pdf�qSr)r��rir�rYZdkeysrrrk�s��z-TestCase.test_builtin_map.<locals>.<listcomp>r�r�r�r\Zxy�
r��)rErW�mapr1rN�itemsr�r�rr�r�r�rr�)r�expectedr�rrr�r�test_builtin_map�s@�
���$���zTestCase.test_builtin_mapcCs�|�tt��g�|�ttg��g�|�ttddg��ddg�|�ttd�|�tttd�d�|�tttd�t�|�tttd���gd��|�tttd���gd��d	d
dd�}|�t|���tt||�	����Gdd
�d
�}t
tddd�}z|�d�W|�
�n|�
�wt
tddd�}z'|�tt|d�||d���gd��W|�
�ztt�Wq�ty�Yq�w|�
�ztt�Wwty�Yww|�tttd���dd�td�D��Gdd�d�}Gdd�d|�}Gdd�d|�}dd �}|�t|��d�|�t|��d!�|�||��|td���|�||��|td���|�||��|td���d"d�td�D�}|�|�|�fD]}	|�|�|�fD]}
|�||	|
�|��qS�qIdS)#N�rr	�ab)rr|)r	r�r\r�rc)�r)r)r	rr	r�c@r)z+TestCase.test_builtin_zip.<locals>.IntsFromcSr'rr.)r�startrrrr$r)z4TestCase.test_builtin_zip.<locals>.IntsFrom.__init__cSrrrrrrrr'r z4TestCase.test_builtin_zip.<locals>.IntsFrom.__iter__cSs|j}|d|_|Srr.r/rrrr*s
z4TestCase.test_builtin_zip.<locals>.IntsFrom.__next__Nr�rrrr�IntsFrom#sr�r�r�r�z	a
bbb
cc
r�r���))r�a
r�)rzbbb
i����)r	zcc
i����rucSsg|]}|f�qSrrr�rrrrkAsz-TestCase.test_builtin_zip.<locals>.<listcomp>c@r8)z.TestCase.test_builtin_zip.<locals>.NoGuessLen5cSs|dkrt�|S�Nru)r2r/rrrr3Esz:TestCase.test_builtin_zip.<locals>.NoGuessLen5.__getitem__Nr;rrrr�NoGuessLen5Dr<r�c@r8)z-TestCase.test_builtin_zip.<locals>.Guess3Len5cS�dSrbrrrrr�__len__Kr z5TestCase.test_builtin_zip.<locals>.Guess3Len5.__len__N�r"r#r$r�rrrr�
Guess3Len5Jr<r�c@r8)z.TestCase.test_builtin_zip.<locals>.Guess30Len5cSr�)N�rrrrrr�Or z6TestCase.test_builtin_zip.<locals>.Guess30Len5.__len__Nr�rrrr�Guess30Len5Nr<r�cWstt|��Sr)rW�zip)r�rrr�lzipRsz'TestCase.test_builtin_zip.<locals>.lzipr�cSsg|]}||f�qSrrr�rrrrk[s)rErWr�rxr�rNr&r1r�r�r�rr�r�rr�r�)rrYr�r�r�r�r�r�r�r}�yrrr�test_builtin_zipsh��"����&��zTestCase.test_builtin_zipcCs�Gdd�d�}ttddd�}z|�d�W|��n|��wttddd�}z$d�||��}|�|d	�W|��ztt�WdStyJYdSw|��ztt�Wwty^Yww)
Nc@r)z4TestCase.test_unicode_join_endcase.<locals>.OhPhooeycSst|�|_d|_dSr)rKrFr)rrGrrrres

z=TestCase.test_unicode_join_endcase.<locals>.OhPhooey.__init__cSrrrrrrrrir z=TestCase.test_unicode_join_endcase.<locals>.OhPhooey.__iter__cSs&|j}|d|_|dkrdSt|j�S)Nrr	zfooled you!)rr0rFr/rrrrls


z=TestCase.test_unicode_join_endcase.<locals>.OhPhooey.__next__Nr�rrrr�OhPhooeydsr�r�r�r��a
b
c
r�z - za
 - b
 - fooled you! - c
)r�rr�r��joinrErr�)rr�r�Zgotrrr�test_unicode_join_endcase`s*���z"TestCase.test_unicode_join_endcasecCsttd�td�fD]%}td�D]}|�||�qdddddgddid|f	D]}|�||�q$q|�tttdg���|�ttdg��|�tttt	g���|�ttt	g��|�t	tttg���|�t	ttg��|�
tdd	��|�
td
d	��|�
tdd	��ddd
dd�}|D]}|�||�|�||�
��q�|�
�D]}|�||�
��|�||�q�|��D]\}}|�||f|���|�||f|���q�ttddd�}z|�d�W|��n|��wttddd�}z7dD]}|�dd�|�||�|�dd�|�|d|�q�W|��ztt�WdSt�y$YdSw|��ztt�Wwt�y9Yww)NrurUr�g�(\��5E@)rcr{ry@(�cSsddvS)Nrc�rrrrrr��r�z-TestCase.test_in_and_not_in.<locals>.<lambda>cSsdtvSrb)r�rrrrr��r�cSs
dt�vSrb)r?rrrrr��s
r	rc�@�r�r�r���?r�r�r�r�r�rr�)r&r1rNZassertInZassertNotInrr-rKr5rrxr�r@r�r�r�rr�r�r�rr�)rZsc5rrYrf�vr��chunkrrr�test_in_and_not_in�sb�����zTestCase.test_in_and_not_incCs�ddlm}|�|gd�d�d�|�|dd�d�|�|dd�d�|�|dd�d�|�t|d	d
�|�t|||�ddddd�}|D]}|�|||�d
�qE|�||��d�d�|�||��d�d
�|�||��d
�d�ttddd�}z|�d�W|�	�n|�	�wttddd�}z/dD]\}}|�
dd�|�|||d�|�q�W|�	�ztt�WdSty�YdSw|�	�ztt�Wwty�Yww)Nr)�countOf�rr	r	rcr	rur	rc�122325�2�6r�rr�r�rr�r�r�za
b
c
b
r�))r|r)r�r	)r�r)rYrr�)
�operatorrrErxr�r�r�rr�r�r�rr�)rrrYrfr�Zletter�countrrr�test_countOf�sF����zTestCase.test_countOfcCs�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�tt	ddd�}z|�
d�W|��n|��wtt	ddd�}z<t|�}|�||d�d�|�||d�d�|�||d�d�|�t||d�W|��zt
t	�Wq�ty�Yq�w|��zt
t	�Wwty�Ywwtd�}td�D]}|�|||�|�q�|�t||d�dS)Nr)�indexOfrrr	rcrurzrr�5rr�r�r�r�z
a
b
c
d
e
r�zb
zd
ze
r�r�)r	rrErx�
ValueErrorr�r@r?r�rr�r�rKrr�r&rN)rrr�ZfiterZiclassrrrr�test_indexOf�sP���zTestCase.test_indexOfcsttddd�}zs|�t|jd�|�t|jd�|�ddg�|�d�|�ddi�|�i�Gd	d
�d
��G�fdd�d�}|�|d
d��|��ttdd�}dd�tdd�D�}|�t|�|�W|��zt	t�WdSt
yzYdSw|��zt	t�Wwt
y�Yww)Nr�r�r�r�r�r�)r�r�z5
c@r)z*TestCase.test_writelines.<locals>.IteratorcSs||_||_|j|_dSr)r��finishr�rr�rrrrrsz3TestCase.test_writelines.<locals>.Iterator.__init__cSs0|j|jkrt�t|j�d}|jd7_|S)Nr�r)rrr�str)r�resultrrrrs
z3TestCase.test_writelines.<locals>.Iterator.__next__cSrrrrrrrr"r z3TestCase.test_writelines.<locals>.Iterator.__iter__Nr!rrrrrVsrVc� eZdZdd�Z�fdd�ZdS)z*TestCase.test_writelines.<locals>.WhatevercSs||_||_dSr�r�rrrrrr&rz3TestCase.test_writelines.<locals>.Whatever.__init__cs�|j|j�Srrr�rVrrr*sz3TestCase.test_writelines.<locals>.Whatever.__iter__Nr+rrrr�Whatever%srrzi�cSsg|]}t|�d�qS)r�)rr�rrrrk1sz,TestCase.test_writelines.<locals>.<listcomp>r)r�rrxr��
writelinesr�rNrErWrr�)rr�rr�rrr�test_writeliness6

���zTestCase.test_writelinescCs�d\}}|�||fd�td�\}}}|�|||fd�ztd�\}}Wn	ty-Ynw|�d�z	td�\}}}Wn	tyEYnw|�d�zt\}}}Wn	ty[Ynw|�d�dddd���\}}}|�|||fd	�ttd
dd�}d
}z|D]}|�	|�q�W|�
�n|�
�wttddd�}z#|\}}}|�|||f|�W|�
�ztt�Wq�ty�Yq�w|�
�ztt�Wwty�Ywwtd�ddi\}}\}|�|||fd�dS)Nr�rcr
zshould have raised ValueErrorr	zshould have raised TypeErrorr�)rr	rc)r�r�r�r�r�r�)r�zbb
zccc
r��)rrr�)
rEr&rr�r�r�r�r�rr�r�rr�)rr|r�r�r��lines�linerrr�test_unpack_iter=sb�
�
�
�
���zTestCase.test_unpack_itercCs�Gdd�dt�}|�}|�|jd�~|�|jd�|�|�|�g}|�|jd�zt|�\}}Wn	ty:Ynw~|�|jd�dS)Nc@s eZdZdZdd�Zdd�ZdS)z.TestCase.test_ref_counting_behavior.<locals>.CrcSs|jd7_t�|�Sr)r
r��__new__)�clsrrrrvs
z6TestCase.test_ref_counting_behavior.<locals>.C.__new__cSs&|j}|jdks
J�|jd8_dSr�)�	__class__r
)rrrrr�__del__ysz6TestCase.test_ref_counting_behavior.<locals>.C.__del__N)r"r#r$r
rr!rrrrr�tsr�rrrc)r�rEr
rKr)rr�r}�lr|r�rrr�test_ref_counting_behaviorrs	�z#TestCase.test_ref_counting_behaviorcCsPttd��}t|�}|�t|�ttd���|�tdd��|�t|�g�dS�Nrur\)rWrNrKrE�extend�rr|r�rrr�test_sinkstate_list�s
zTestCase.test_sinkstate_listcCs8d}t|�}|�t|�ttd���|�t|�g�dS)Nr�ru�rKrErWrNr&rrr�test_sinkstate_tuple�szTestCase.test_sinkstate_tuplecCs4d}t|�}|�t|�gd��|�t|�g�dSr�)rKrErWr&rrr�test_sinkstate_string�szTestCase.test_sinkstate_stringcCsBtd�}t|�}|�t|�ttd���d|_|�t|�g�dSr$)r1rKrErWrNrr&rrr�test_sinkstate_sequence�s
z TestCase.test_sinkstate_sequencecCsDdgfdd�}t|d�}|�t|�ttd���|�t|�g�dS)NrcSs(|d}|d|d<|dkrtd��|S)Nrrr\zshouldn't have gotten this far)�AssertionErrorr�rrrr��s
z.TestCase.test_sinkstate_callable.<locals>.spamrur()rr�r�rrr�test_sinkstate_callable�s
z TestCase.test_sinkstate_callablecCsbdddddd�}t|�|��|��|��fD]}t|�}|�tt|��d�|�t|�g�qdS)Nrr	rr{rc)rr	rr{rcru)rKr�r�r�rEr�rWr&rrr�test_sinkstate_dict�s �zTestCase.test_sinkstate_dictcCs:dd�}|�}|�t|�ttd���|�t|�g�dS)Ncs��td�D]}|VqdSr��rNr.rrr�gen����z*TestCase.test_sinkstate_yield.<locals>.genru)rErWrN)rr1r�rrr�test_sinkstate_yield�szTestCase.test_sinkstate_yieldcCs<td�}t|�}|�t|�ttd���|�t|�g�dSr�)rNrKrErWr&rrr�test_sinkstate_range�szTestCase.test_sinkstate_rangecCsNtd�}t|�}t|�}|�t|�tttd�td����|�t|�g�dSr�)rN�	enumeraterKrErWr�)rr|r�r�rrr�test_sinkstate_enumerate�s
"z!TestCase.test_sinkstate_enumeratecs<G�fdd�dt��z	��D]}qWdStyYdSw)Ncr)z'TestCase.test_3720.<locals>.BadIteratorcSrrrrrrrr�r z0TestCase.test_3720.<locals>.BadIterator.__iter__cs�`dSr)rr��BadIteratorrrr�sz0TestCase.test_3720.<locals>.BadIterator.__next__N)r"r#r$rrrr7rrr8�sr8)r�r�r/rr7r�	test_3720�s
��zTestCase.test_3720cCsJdd�}dgd}td�D]}|�d�q
|�|��|�t|�d�dS)Ncsr/)N��r0r.rrrr1�r2zITestCase.test_extending_list_with_iterator_does_not_segfault.<locals>.genrr:��i�)rN�popr%rEr�)rr1Zlstrrrr�3test_extending_list_with_iterator_does_not_segfault�s
z<TestCase.test_extending_list_with_iterator_does_not_segfaultcCs�tt��}|�tjd�|�t|�tjd�|�t|�tjd�|�t��t|�Wd�n1s7wY|�t��
t|�Wd�dS1sQwYdS)Nr	r)	rKr9�__setstate__�sys�maxsizerEr0rx�
OverflowError�rrFrrr�test_iter_overflow�s

�
"�zTestCase.test_iter_overflowcCs8tt��}|�d�|�t|�d�|�t|�d�dS)Ni���rr)rKr9r>rEr0rBrrr�test_iter_neg_setstates

zTestCase.test_iter_neg_setstatecCst|ttd�dS)Nr�)rrKr1rrrr�test_free_after_iteratingsz"TestCase.test_free_after_iteratingcCs2ttfD]
}|�tt|��q|�ttt��dSr)r=r>rxr�rKr@r?)r�typrrr�test_error_iter
szTestCase.test_error_iterN)T)=r"r#r$rJrMrCr]r_rargrlrmrorrrsrtryr~r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�r�rrrrrrr#r'r)r*r+r-r.r3r4r6r9r=rCrDrErGrrrrrBVsx


	
$

	!- O*1#*55
	

rB�__main__)r?ZunittestZtest.supportrZtest.support.os_helperrrrrrrH�collections.abcrTrdrr&r-r1r5r9r=r>r?rBr"�mainrrrr�<module>s8
	A�
© 2025 GrazzMean