Your IP : 216.73.216.85


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



��Yfv<�@ssdZddlZddlZddlZddlZddlZddlZddlmZm	Z	ddl
mZddl
m
Z
ddl
mZdd�ZGd	d
�d
ej�Zdd�ZGd
d�dej�ZGdd�d�ZGdd�d�ZGdd�d�ZGdd�de�ZGdd�d�ZGdd�dej�Zedkroej�dS)z3
  Test cases for the repr module
  Nick Mathewson
�N)�create_empty_file�verbose)�repr)�Repr)�recursive_reprcCs*f}xt|�D]}|f}qW|S)N)�range)Znesting�t�i�r
�6/opt/alt/python35/lib64/python3.5/test/test_reprlib.py�nestedTuples
rc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dd�Zdd�Zdd�ZdS)�	ReprTestscCs�|j}|td�d�|td�d�dddd}t|�dd�d	t|�dd�}|t|�|�|td�td��ddd
d}t|�dd�d	t|�dd�}|t|�|�dS)N�abcz'abc'Zabcdefghijklmnopz'abcdefghijklmnop'�a��b�
z...�z"'�"�'�di�i�)�assertEqual�rr)�self�eq�s�expectedr
r
r�test_strings	..zReprTests.test_stringcCs{|j}|td�d�d}|t|�d�t�}d|_t|�dd	�d}||j|�|�dS)
N�z(1,)��z	(1, 2, 3)z...))r)rrr ���)rrr�maxtupler)rrZt3Zr2rr
r
r�
test_tuple)s			zReprTests.test_tuplec
Cs
ddlm}ddlm}|j}|tf�d�|td0�d�|td1�d	�|td2�d
�|td3�d�|tg�d�|tdg�d�|tdddg�d�|tdddd
ddg�d�|tdddd
dddg�d�|ttg��d�|ttdg��d�|ttdddg��d�|ttdddd
ddg��d�|ttdddd
dddg��d�|ttg��d�|ttdg��d�|ttdddg��d�|ttdddd
ddg��d�|ttdddd
dddg��d�|t|dddd
dddg��d�|ti�d �d!dd"dd#dd$d
i}|t|�d%�d|d&<|t|�d'�|t|d(��d)�|t|d(dg��d*�|t|d(ddg��d+�|t|d(dddg��d,�|t|d(dddd
g��d-�|t|d(dddd
dg��d.�|t|d(dddd
ddg��d/�dS)4Nr)�array)�dequez()rz(1,)rr z	(1, 2, 3)���z(1, 2, 3, 4, 5, 6)�z(1, 2, 3, 4, 5, 6, ...)z[]z[1]z	[1, 2, 3]z[1, 2, 3, 4, 5, 6]z[1, 2, 3, 4, 5, 6, ...]zset()z{1}z	{1, 2, 3}z{1, 2, 3, 4, 5, 6}z{1, 2, 3, 4, 5, 6, ...}zfrozenset()zfrozenset({1})zfrozenset({1, 2, 3})zfrozenset({1, 2, 3, 4, 5, 6})z"frozenset({1, 2, 3, 4, 5, 6, ...})zdeque([1, 2, 3, 4, 5, 6, ...])z{}ZaliceZbobZcharlesZdavez/{'alice': 1, 'bob': 2, 'charles': 3, 'dave': 4}Zarthurz6{'alice': 1, 'arthur': 1, 'bob': 2, 'charles': 3, ...}r	z
array('i')zarray('i', [1])zarray('i', [1, 2])zarray('i', [1, 2, 3])zarray('i', [1, 2, 3, 4])zarray('i', [1, 2, 3, 4, 5])z array('i', [1, 2, 3, 4, 5, ...]))r)rrr )rrr r&r'r()rrr r&r'r(r))r$�collectionsr%rr�set�	frozenset)rr$r%r�dr
r
r�test_container5sJ	%("+."+..
"%(+'zReprTests.test_containerc	Cs�|j}|tdh�d�|tdddh�d�|tddddddh�d	�|tddddddd
h�d�dS)Nrz{1}rr z	{1, 2, 3}r&r'r(z{1, 2, 3, 4, 5, 6}r)z{1, 2, 3, 4, 5, 6, ...})rr)rrr
r
r�test_set_literaljs
	%zReprTests.test_set_literalc
Cs�|j}|ttdh��d�|ttdddh��d�|ttddddddh��d	�|ttddddddd
h��d�dS)Nrzfrozenset({1})rr zfrozenset({1, 2, 3})r&r'r(zfrozenset({1, 2, 3, 4, 5, 6})r)z"frozenset({1, 2, 3, 4, 5, 6, ...}))rrr,)rrr
r
r�test_frozensetqs
	"+zReprTests.test_frozensetcCs�|j}|td�td��|td�td��|td	�td
��d}t|�dd�dt|�dd�}|t|�|�dS)
N�{g�?r �
r�z...�gUUUUUU�?gUUUUUU�?lDG��d�r���Y�|g�O�s&YR5Ii��)rrr)rr�nrr
r
r�test_numbersxs	.zReprTests.test_numberscCs|j}td�}|t|�t|��tdd�}t|�dd�dt|�dd�}|t|�|�t�}|t|�dt|��tt�}|j|jd��|j|jd	��|j	|j
d�d
dg�dS)Nr�xi�rz...rz&<ClassWithFailingRepr instance at %#x>z<class �>�i�)r�
ClassWithReprrr�ClassWithFailingRepr�id�
assertTrue�
startswith�endswithZassertIn�find)rrZi1Zi2rZi3rr
r
r�
test_instance�s	.	zReprTests.test_instancecCs/tdd��}|j|jd�|�dS)NcSs|S)Nr
)r7r
r
r�<lambda>�sz'ReprTests.test_lambda.<locals>.<lambda>z0<function ReprTests.test_lambda.<locals>.<lambda)rr=r>)rrr
r
r�test_lambda�szReprTests.test_lambdacCs?|j}|tt�d�|jtdj�jd��dS)Nz<built-in function hash>�z*<built-in method split of str object at 0x)rr�hashr=�splitr>)rrr
r
r�test_builtin_function�s	zReprTests.test_builtin_functioncCsa|j}|ttd��d�|ttdd��d�|ttddd��d�dS)Nrzrange(0, 1)rzrange(1, 2)r&r zrange(1, 4, 3))rrr)rrr
r
r�
test_range�s	zReprTests.test_rangecCs#|j}|tggggggg�d�|tgggggggg�d�|ttd��d�|ttd��d�|ttd�td�i�d�|ttd�td�i�d	�|tigggggg�d
�|tiggggggg�d�dS)Nz[[[[[[[]]]]]]]z[[[[[[[...]]]]]]]r(z(((((((),),),),),),)r)z(((((((...),),),),),),)r'z&{((((((),),),),),): ((((((),),),),),)}z,{((((((...),),),),),): ((((((...),),),),),)}z[[[[[[{}]]]]]])rrr)rrr
r
r�test_nesting�s	%(%zReprTests.test_nestingcCsLdd�}|�jd}|jt|�d�|jt|�d�dS)Ncsd��fdd�}|S)N�*cs�S)Nr
r
)r7r
r�inner�sz4ReprTests.test_cell.<locals>.get_cell.<locals>.innerr
)rKr
)r7r�get_cell�sz%ReprTests.test_cell.<locals>.get_cellrz6<cell at 0x[0-9A-Fa-f]+: int object at 0x[0-9A-Fa-f]+>z<cell at 0x.*\.\.\..*>)�__closure__ZassertRegexrr)rrLr7r
r
r�	test_cell�szReprTests.test_cellcCs�|j}|ttj�d�Gdd�d�}t|j�}|jt|�jd��t|j�}|jt|�jd��dS)Nz"<method 'items' of 'dict' objects>c@seZdZdd�ZdS)z%ReprTests.test_descriptors.<locals>.CcSsdS)Nr
)�clsr
r
r�foo�sz)ReprTests.test_descriptors.<locals>.C.fooN)�__name__�
__module__�__qualname__rPr
r
r
r�C�srTz<staticmethod object at 0xz<classmethod object at 0x)	rr�dict�items�staticmethodrPr=r>�classmethod)rrrTr7r
r
r�test_descriptors�s	zReprTests.test_descriptorscCsUtdddg�}t|�}ddddi}t|�t|�t|�dS)Ny�?y@y@rr)r+r,r)rr7�y�zr
r
r�test_unsortable�s

zReprTests.test_unsortableN)rQrRrSrr#r.r/r0r6rArCrGrHrIrNrYr\r
r
r
rr
s5
r
c	Cs0t|ddd��}|j|�WdQRXdS)N�w�encoding�ASCII)�open�write)�path�text�fpr
r
r�
write_file�srec@s�eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Ze	j
d�d
d��Zdd�Zdd�Z
dd�Ze	j
d�dd��ZdS)�LongReprTest�3areallylongpackageandmodulenametotestreprtruncationcCs�tjj|j�|_tjj|j|j�|_tj|jdd�tj|j�t	tjj|jd��tj|jdd�tj|j�t	tjj|jd��tj
�|_tjj
d|j�tj�dS)N�
ignore_errorsTz__init__.pyr)�osrb�join�longname�pkgname�
subpkgname�shutilZrmtree�mkdirr�getcwd�here�sys�insert�	importlib�invalidate_caches)rr
r
r�setUp�szLongReprTest.setUpcCs�g}xTtj|j�D]@\}}}x.||D]"}|jtjj||��q3WqW|j|j�|j�|j�x=|D]5}tjj|�r�tj	|�q�tj
|�q�Wtjd=dS)Nr)ri�walkrl�appendrbrj�sort�reverse�isdir�rmdir�removerr)rZactions�dirpathZdirnames�	filenames�name�pr
r
r�tearDown�s"$


zLongReprTest.tearDowncCs�t|j�}|dt|j�d7}|t|�dtd�7}|ttjjd��td�}tjdkr�|dkr�|jd|�n"tjdkr�t	r�t
d|�dS)	Nrrz.pyzx.py�ntizDtest paths too long (%d characters) for Windows' 260 character limitzcached_path_len =)�lenrqrkrt�util�cache_from_sourcerir�ZskipTestr�print)rZmodule_nameZsource_path_lenZcached_path_lenr
r
r�_check_path_limitationss&	z$LongReprTest._check_path_limitationscCs�d|_|j|j�ttjj|j|jd��tj	�ddl
m}|}|jt
|�d|j|jf�|jt
t�d�dS)Nz.pyr)rgz<module %r from %r>z<module 'sys' (built-in)>)ZmaxDiffr�rlrrirbrjrmrtru�gareallylongpackageandmodulenametotestreprtruncation.areallylongpackageandmodulenametotestreprtruncationrgrrrQ�__file__rr)rrg�moduler
r
r�test_modules	#
&zLongReprTest.test_modulecCsp|jd�|j}ttjj|jd�d�tj�ddl	m
}|t|j
�d|j�dS)NrPzfoo.pyzclass foo(object):
    pass
r)rPz<class '%s.foo'>)
r�rrerirbrjrmrtrur�rPrrQ)rrrPr
r
r�	test_types
	
zLongReprTest.test_typezneed a suitable objectcCsdS)Nr
)rr
r
r�test_object*szLongReprTest.test_objectcCsj|jd�ttjj|jd�d�tj�ddlm	}|j
t|j	�d|j�dS)N�barzbar.pyzclass bar:
    pass
r)r�z<class '%s.bar'>)
r�rerirbrjrmrtrur�r�rrrQ)rr�r
r
r�
test_class0s

zLongReprTest.test_classcCsy|jd�ttjj|jd�d�tj�ddlm	}|j	�}|j
t|�jd|j
��dS)N�bazzbaz.pyzclass baz:
    pass
r)r�z<%s.baz object at 0x)r�rerirbrjrmrtrur�r�r=rr>rQ)rr�Zibazr
r
rrA;s

zLongReprTest.test_instancecCs�|jd�|j}ttjj|jd�d�tj�ddl	m
}t|jj
�}|j|jd�|�|j�}t|j
�}|j|jd|jf�|�dS)N�quxzqux.pyz�class aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa:
    def amethod(self): pass
r)r�z�<function aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.amethoda�<bound method aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.amethod of <%s.aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa object at 0x)r�rrerirbrjrmrtrur�r�rZ�aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaZamethodr=r>rQ)rrr�rZiquxr
r
r�test_methodGs
	
zLongReprTest.test_methodz1needs a built-in function with a really long namecCsdS)Nr
)rr
r
rrGZsz"LongReprTest.test_builtin_functionN)rQrRrSrkrvr�r�r�r��unittest�skipr�r�rAr�rGr
r
r
rrf�s
rfc@s(eZdZdd�Zdd�ZdS)r:cCs
||_dS)N)r)rrr
r
r�__init__`szClassWithRepr.__init__cCsd|jS)NzClassWithRepr(%r))r)rr
r
r�__repr__bszClassWithRepr.__repr__N)rQrRrSr�r�r
r
r
rr:_sr:c@seZdZdd�ZdS)r;cCstd��dS)Nz+This should be caught by Repr.repr_instance)�	Exception)rr
r
rr�gszClassWithFailingRepr.__repr__N)rQrRrSr�r
r
r
rr;fsr;c@sCeZdZdZdd�Zdd�Ze�dd��ZdS)	�MyContainerz"Helper class for TestRecursiveReprcCst|�|_dS)N)�list�values)rr�r
r
rr�lszMyContainer.__init__cCs|jj|�dS)N)r�rx)r�valuer
r
rrxnszMyContainer.appendcCs!ddjtt|j��dS)N�<z, r8)rj�map�strr�)rr
r
rr�pszMyContainer.__repr__N)rQrRrS�__doc__r�rxrr�r
r
r
rr�jsr�c@s(eZdZed�dd��ZdS)�MyContainer2z+++cCs!ddjtt|j��dS)Nr�z, r8)rjr�r�r�)rr
r
rr�uszMyContainer2.__repr__N)rQrRrSrr�r
r
r
rr�tsr�c@s1eZdZdd�ZeZe�e�ZdS)�MyContainer3cCsdS)zTest document contentNr
)rr
r
rr�zszMyContainer3.__repr__N)rQrRrSr��wrappedr�wrapperr
r
r
rr�ysr�c@s(eZdZdd�Zdd�ZdS)�TestRecursiveReprcCs�ttd��}|j|�|jd�|j|�|jt|�d�ttd��}|j|�|jd�|j|�|jt|�d�dS)NZabcder7z<a, b, c, d, e, ..., x, ...>z<a, b, c, d, e, +++, x, +++>)r�r�rxrrr�)r�mr
r
r�test_recursive_repr�s





z%TestRecursiveRepr.test_recursive_reprcCsYddlm}tj}tj}x0|D](}|jt||�t||��q)WdS)Nr)�WRAPPER_ASSIGNMENTS)�	functoolsr�r�r�r�ZassertIs�getattr)r�assignedr�r�r�r
r
r�test_assigned_attributes�s
		
z*TestRecursiveRepr.test_assigned_attributesN)rQrRrSr�r�r
r
r
rr��sr��__main__)r�rrrirnrt�importlib.utilr�Ztest.supportrr�reprlibrrrrrZTestCaser
rerfr:r;r�r�r�r�rQ�mainr
r
r
r�<module>s,��