Your IP : 216.73.216.213


Current Path : /opt/alt/python35/lib64/python3.5/test/__pycache__/
Upload File :
Current File : //opt/alt/python35/lib64/python3.5/test/__pycache__/test_enumerate.cpython-35.pyc



��Yf��@s�ddlZddlZddlZddlZddlmZGdd�d�ZGdd�d�ZGdd�d�ZGd	d
�d
�Z	Gdd�d�Z
Gd
d�d�ZGdd�d�ZGdd�dej
e�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�dej
e�ZGdd�de�ZGdd �d e�ZGd!d"�d"e�Zed#kr�ej�dS)$�N)�supportc@s.eZdZdZdd�Zdd�ZdS)�GzSequence using __getitem__cCs
||_dS)N)�seqn)�selfr�r�8/opt/alt/python35/lib64/python3.5/test/test_enumerate.py�__init__
sz
G.__init__cCs|j|S)N)r)r�irrr�__getitem__sz
G.__getitem__N)�__name__�
__module__�__qualname__�__doc__rr
rrrrrsrc@s:eZdZdZdd�Zdd�Zdd�ZdS)	�Iz Sequence using iterator protocolcCs||_d|_dS)Nr)rr	)rrrrrrs	z
I.__init__cCs|S)Nr)rrrr�__iter__sz
I.__iter__cCsA|jt|j�krt�|j|j}|jd7_|S)N�)r	�lenr�
StopIteration)r�vrrr�__next__s
z
I.__next__N)rrr
rrrrrrrrrsrc@s.eZdZdZdd�Zdd�ZdS)�Igz9Sequence using iterator protocol defined with a generatorcCs||_d|_dS)Nr)rr	)rrrrrrs	zIg.__init__ccsx|jD]}|Vq
WdS)N)r)r�valrrrr!szIg.__iter__N)rrr
rrrrrrrrsrc@s.eZdZdZdd�Zdd�ZdS)�Xz Missing __getitem__ and __iter__cCs||_d|_dS)Nr)rr	)rrrrrr's	z
X.__init__cCsA|jt|j�krt�|j|j}|jd7_|S)Nr)r	rrr)rrrrrr*s
z
X.__next__N)rrr
rrrrrrrr%src@s:eZdZdZdd�Zdd�Zdd�ZdS)	�EzTest propagation of exceptionscCs||_d|_dS)Nr)rr	)rrrrrr2s	z
E.__init__cCs|S)Nr)rrrrr5sz
E.__iter__cCsdddS)N�rr)rrrrr7sz
E.__next__N)rrr
rrrrrrrrr0src@s.eZdZdZdd�Zdd�ZdS)�NzIterator missing __next__()cCs||_d|_dS)Nr)rr	)rrrrrr<s	z
N.__init__cCs|S)Nr)rrrrr?sz
N.__iter__N)rrr
rrrrrrrr:src@seZdZdd�ZdS)�
PickleTestcCsx�ttjd�D]�}tj||�}tj|�}|jt|�t|��|jt|�|�tj|�}yt|�Wn,t	k
r�|j
|dd��wYnXtj||�}tj|�}|jt|�|dd��qWdS)Nr)�range�pickleZHIGHEST_PROTOCOL�dumps�loads�assertEqual�type�list�nextrZassertFalse)rZitorg�seq�proto�d�itrrr�check_pickleDs
zPickleTest.check_pickleN)rrr
r)rrrrrBsrc@s�eZdZeZddddgZZdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zejdd��ZdS) �EnumerateTestCase�abcr�ar�b��ccCs�|jt|j|j��|j�|j|j�}|jt|�|�|jt|j|j��|j�|jjdS)N)r!r"�enumr%�iterr#�resr)r�errr�test_basicfunctionZs
%%z$EnumerateTestCase.test_basicfunctioncCs#|j|j|j�|j�dS)N)r)r0r%r2)rrrr�test_pickleaszEnumerateTestCase.test_picklecCsW|jt|jt|j���|j�|jtd��}|jtt|�dS)N�)	r!r#r0rr%r2�assertRaisesrr$)rr3rrr�test_getitemseqnds+z"EnumerateTestCase.test_getitemseqncCsW|jt|jt|j���|j�|jtd��}|jtt|�dS)Nr6)	r!r#r0rr%r2r7rr$)rr3rrr�test_iteratorseqnis+z#EnumerateTestCase.test_iteratorseqncCsW|jt|jt|j���|j�|jtd��}|jtt|�dS)Nr6)	r!r#r0rr%r2r7rr$)rr3rrr�test_iteratorgeneratorns+z(EnumerateTestCase.test_iteratorgeneratorcCs#|jt|jt|j��dS)N)r7�	TypeErrorr0rr%)rrrr�test_noniterablessz"EnumerateTestCase.test_noniterablecCs#|jt|jt|j��dS)N)r7r;r0rr%)rrrr�test_illformediterablevsz(EnumerateTestCase.test_illformediterablecCs)|jtt|jt|j���dS)N)r7�ZeroDivisionErrorr#r0rr%)rrrr�test_exception_propagationysz,EnumerateTestCase.test_exception_propagationcCsb|jt|j�|jt|jd�|jt|jdd�|jt|jddd�dS)Nrr+r,r.r)r7r;r0)rrrr�test_argumentcheck|sz$EnumerateTestCase.test_argumentcheckcCs�|jtttttt|j�����t|j��|jttttt|j����tdt|j���dS)Nr)	r!r�set�map�idr#�	enumerater%�min)rrrr�test_tuple_reuse�s=z"EnumerateTestCase.test_tuple_reuseN)rr,)rr-)r.r/)rrr
rDr0r%r2r4r5r8r9r:r<r=r?r@rZcpython_onlyrFrrrrr*Usr*c@seZdZdS)�MyEnumN)rrr
rrrrrG�srGc@seZdZeZdS)�SubclassTestCaseN)rrr
rGr0rrrrrH�srHc@seZdZdgZZdS)�	TestEmptyr6N)rrr
r%r2rrrrrI�srIc@s=eZdZeddd�Zeeed�e��ZdS)�TestBig�
i Nr.N)rrr
rr%r#�zipr2rrrrrJ�srJc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zej	e
ed�d�d
d��Zdd�Z
dd�ZdS)�TestReversedcCs�Gdd�d�}xmdtd�ttd��|�tddd�fD]5}|jt|�ddd�tt|���qJW|jtti�|jttgdd�dS)	Nc@s(eZdZdd�Zdd�ZdS)z#TestReversed.test_simple.<locals>.AcSs |dkrt|�St�dS)N�)�strr)rr	rrrr
�s
z/TestReversed.test_simple.<locals>.A.__getitem__cSsdS)NrNr)rrrr�__len__�sz+TestReversed.test_simple.<locals>.A.__len__N)rrr
r
rPrrrr�A�srQr+rNr�r,���)r�tuplerDr!r#�reversedr7r;)rrQ�datarrr�test_simple�s
=3zTestReversed.test_simplecCs8td�}|jtt|��tt|���dS)Nr)rr!r"rUr1)r�xrrr�test_range_optimization�sz$TestReversed.test_range_optimizationcCs�x�dtd�td�td�fD]Z}|jtjt|��t|��t|�}t|�|jtj|�d�q%WGdd�d�}t|��}|jt	tj|�dS)NZhellorNrc@s.eZdZdZdd�Zdd�ZdS)z.TestReversed.test_len.<locals>.SeqWithWeirdLenFcSs |jsd|_dSt�dS)NTrK)�calledr>)rrrrrP�s		z6TestReversed.test_len.<locals>.SeqWithWeirdLen.__len__cSs|S)Nr)r�indexrrrr
�sz:TestReversed.test_len.<locals>.SeqWithWeirdLen.__getitem__N)rrr
rZrPr
rrrr�SeqWithWeirdLen�sr\)
rTr#rr!�operator�length_hintrUrr7r>)r�s�rr\rrr�test_len�s+%
	zTestReversed.test_lencCs5Gdd�d�}|�}t|�}||_dS)Nc@s(eZdZdd�Zdd�ZdS)z!TestReversed.test_gc.<locals>.SeqcSsdS)NrKr)rrrrrP�sz)TestReversed.test_gc.<locals>.Seq.__len__cSs|S)Nr)rr[rrrr
�sz-TestReversed.test_gc.<locals>.Seq.__getitem__N)rrr
rPr
rrrr�Seq�srb)rUr`)rrbr_r`rrr�test_gc�s	zTestReversed.test_gccCs*|jtt�|jttgd�dS)NZextra)r7r;rU)rrrr�	test_args�szTestReversed.test_args�getrefcountztest needs sys.getrefcount()cCs�dd�}t�}|_tj|�}xDtd�D]6}yt|�Wntk
r`Yq8X|jd�q8W|j|tj|��dS)NcSsdS)Nrrrrr�f�sz'TestReversed.test_bug1229429.<locals>.frKz'non-callable __reversed__ didn't raise!)	�object�__reversed__�sysrerrUr;Zfailr!)rrfr`�rcr	rrr�test_bug1229429�s
zTestReversed.test_bug1229429cCshGdd�dt�}|�}|jtt|�Gdd�dt�}|�}|jtt|�dS)Nc@seZdZdd�ZdS)z+TestReversed.test_objmethods.<locals>.NoLencSsdS)Nrr)rrrrr
�sz7TestReversed.test_objmethods.<locals>.NoLen.__getitem__N)rrr
r
rrrr�NoLen�srlc@seZdZdd�ZdS)z/TestReversed.test_objmethods.<locals>.NoGetItemcSsdS)Nr.r)rrrrrP�sz7TestReversed.test_objmethods.<locals>.NoGetItem.__len__N)rrr
rPrrrr�	NoGetItem�srm)rgr7r;rU)rrl�nlrmZngirrr�test_objmethods�s		zTestReversed.test_objmethodscCshxadtd�ttd��tddd�fD]/}|jt|�t|�ddd��q1WdS)Nr+rNrrRrS)rrTrDr)rUr#)rrVrrrr5�s7zTestReversed.test_pickleN)rrr
rWrYrarcrd�unittestZ
skipUnless�hasattrrirkror5rrrrrM�s
'rMc@seZdZdd�ZdS)�EnumerateStartTestCasecCsQ|j|j�}|jt|�|�|jt|j|j��|j�dS)N)r0r%r!r1r#r2)rr3rrrr4�sz)EnumerateStartTestCase.test_basicfunctionN)rrr
r4rrrrrr�srrc@s2eZdZdd�Zdddd
gZZd
S)�	TestStartcCst|dd�S)N�start�)rD)rr	rrr�<lambda>�szTestStart.<lambda>r+rur,�r-�
r/N)rur,)rwr-)rxr/)rrr
r0r%r2rrrrrs�srsc@sYeZdZdd�Zdejddfejddfejdd	fgZZd
S)�
TestLongStartcCst|dtjd�S)Nrtr)rDri�maxsize)rr	rrrrvszTestLongStart.<lambda>r+rr,r.r-rr/N)rrr
r0rirzr%r2rrrrry�s#ry�__main__)rpr]rirZtestrrrrrrrrZTestCaser*rDrGrHrIrJrMrrrsryr�mainrrrr�<module>s,
	
4W