Your IP : 216.73.216.213


Current Path : /proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/
Upload File :
Current File : //proc/242857/root/opt/alt/python34/lib64/python3.4/test/__pycache__/test_pickle.cpython-34.pyc

�
f fm=�@sQddlmZmZmZmZddlZddlZddlZddlZddl	Z	ddl
Z
ddlZddlm
Z
ddlmZddlmZddlmZddlmZddlmZdd	lmZdd
lmZyddlZdZWnek
r&dZYnXGd
d�de�ZGdd�de�ZGdd�de�ZGdd�deee�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�Z er�Gdd�de�Z!Gdd �d e�Z"Gd!d"�d"e�Z#Gd#d$�d$e�Z$Gd%d&�d&e�Z%Gd'd(�d(e�Z&Gd)d*�d*e�Z'Gd+d,�d,e�Z(e
j)Gd-d.�d.ej*��Z+ndNdOhZ,dPdQdRdShZ-d?d@�Z.dAdB�Z/dCdD�Z0dEdF�Z1dGdH�Z2GdIdJ�dJej*�Z3dKdL�Z4e5dMkrMe4�ndS)T�)�IMPORT_MAPPING�REVERSE_IMPORT_MAPPING�NAME_MAPPING�REVERSE_NAME_MAPPINGN)�support)�AbstractUnpickleTests)�AbstractPickleTests)�AbstractPickleModuleTests)�AbstractPersistentPicklerTests)�#AbstractPicklerUnpicklerObjectTests)�AbstractDispatchTableTests)�BigmemPickleTestsTFc@seZdZdS)�PickleTestsN)�__name__�
__module__�__qualname__�rr�5/opt/alt/python34/lib64/python3.4/test/test_pickle.pyrsrc@sgeZdZejZefZeeje	e
efZejee
e
ejeefZdd�ZdS)�PyUnpicklerTestscKs+tj|�}|j||�}|j�S)N)�io�BytesIO�	unpickler�load)�self�buf�kwds�f�urrr�loads*szPyUnpicklerTests.loadsN)rrr�pickle�
_Unpicklerr�
IndexError�bad_stack_errors�UnpicklingError�	TypeError�AttributeError�EOFError�bad_mark_errors�
ValueError�struct�error�ImportError�truncated_errorsrrrrrr s				rc@s=eZdZejZejZddd�Zdd�Z	dS)�PyPicklerTestsNcCsHtj�}|j||�}|j|�|jd�t|j��S)Nr)rr�pickler�dump�seek�bytes�read)r�arg�protor�prrr�dumps5s


zPyPicklerTests.dumpscKs+tj|�}|j||�}|j�S)N)rrrr)rrrrrrrrr<szPyPicklerTests.loads)
rrrr�_Picklerr.r rr6rrrrrr-0s		r-c@s�eZdZejZejZeje	fZ
eje	eee
fZeje
eeeje	efZddd�Zdd�ZdS)�InMemoryPickleTestsNcCstj||�S)N)rr6)rr3Zprotocolrrrr6NszInMemoryPickleTests.dumpscKstj||�S)N)rr)rrrrrrrQszInMemoryPickleTests.loads)rrrrr7r.r rr#r!r"r$r%r&r'r(r)r*r+r,r6rrrrrr8Bs				r8c@s=eZdZejZejZddd�Zdd�Z	dS)�PyPersPicklerTestsNcs^G�fdd�d�j�}tj�}|||�}|j|�|jd�|j�S)Ncs"eZdZ�fdd�ZdS)z-PyPersPicklerTests.dumps.<locals>.PersPicklercs
�j|�S)N)�
persistent_id)�subself�obj)rrrr:\sz;PyPersPicklerTests.dumps.<locals>.PersPickler.persistent_idN)rrrr:r)rrr�PersPickler[sr=r)r.rrr/r0r2)rr3r4r=rr5r)rrr6Zs

zPyPersPicklerTests.dumpscsGG�fdd�d�j�}tj|�}|||�}|j�S)Ncs"eZdZ�fdd�ZdS)z/PyPersPicklerTests.loads.<locals>.PersUnpicklercs
�j|�S)N)�persistent_load)r;r<)rrrr>fsz?PyPersPicklerTests.loads.<locals>.PersUnpickler.persistent_loadN)rrrr>r)rrr�
PersUnpickleresr?)rrrr)rrrr?rrr)rrrdszPyPersPicklerTests.loads)
rrrrr7r.r rr6rrrrrr9Us		
r9c@s"eZdZejZejZdS)�PyPicklerUnpicklerObjectTestsN)rrrrr7�
pickler_classr �unpickler_classrrrrr@ms	r@c@s%eZdZejZdd�ZdS)�PyDispatchTableTestscCs
tjj�S)N)r�dispatch_table�copy)rrrr�get_dispatch_tablewsz'PyDispatchTableTests.get_dispatch_tableN)rrrrr7rArFrrrrrCss	rCc@s%eZdZejZdd�ZdS)�PyChainDispatchTableTestscCstjitj�S)N)�collections�ChainMaprrD)rrrrrFsz,PyChainDispatchTableTests.get_dispatch_tableN)rrrrr7rArFrrrrrG{s	rGc@sCeZdZejZejfZe	fZ
eje	eefZ
dS)�CUnpicklerTestsN)rrr�_pickle�	Unpicklerrrr#r"r&r'r%r(r,rrrrrJ�s
			rJc@s"eZdZejZejZdS)�
CPicklerTestsN)rrrrK�Picklerr.rLrrrrrrM�s	rMc@s"eZdZejZejZdS)�CPersPicklerTestsN)rrrrKrNr.rLrrrrrrO�s	rOc@s"eZdZejZejZdS)�CDumpPickle_LoadPickleN)	rrrrKrNr.rr rrrrrrP�s	rPc@s"eZdZejZejZdS)�DumpPickle_CLoadPickleN)	rrrrr7r.rKrLrrrrrrQ�s	rQc@s.eZdZejZejZdd�ZdS)�CPicklerUnpicklerObjectTestscCsn|jtj��}|jt��t|_WdQX|jt��idd6|_WdQXidd6|_dS)N����)rBrrZassertRaisesr$�object�memor()rrrrr�test_issue18339�sz,CPicklerUnpicklerObjectTests.test_issue18339N)	rrrrKrNrArLrBrWrrrrrR�s		rRc@s%eZdZejZdd�ZdS)�CDispatchTableTestscCs
tjj�S)N)rrDrE)rrrrrF�sz&CDispatchTableTests.get_dispatch_tableN)rrrrrNrArFrrrrrX�s	rXc@s%eZdZejZdd�ZdS)�CChainDispatchTableTestscCstjitj�S)N)rHrIrrD)rrrrrF�sz+CChainDispatchTableTests.get_dispatch_tableN)rrrrrNrArFrrrrrY�s	rYc@s1eZdZejZdd�Zdd�ZdS)�SizeofTestscCs�tjd�}tjtj��}|jtj|�|�t	j
d�}t	j
d�}|j}||||d|tj
dd��x'td�D]}|jt|��q�W||||d|d	�dS)
NZ5P2n3i2n3iPZ3nP0nZPn0P��xi�� r)r�calcobjsizerKrNrr�assertEqualrU�
__sizeof__r)�calcsize�check_sizeof�sys�	getsizeof�ranger/�chr)r�basesizer5ZMT_sizeZME_size�check�irrr�test_pickler�s	zSizeofTests.test_picklercs%tjd�}tj�tjd��tjd��|j�x�dD]}xvdD]n}�tj�d	|d
|�}|j	t
j|�|��||d�t|�dt|�d�qSWqFW|td�dtd�d������fd
d�}|ddd�|dgddd�|dd�t
d�D�dd�dd�}||d�dd�||d�dd�||d�dd�||d�dd�||d�dd��tjtjdd��d	dd
d�}|j��|�d�dd�dS)Nz2Pn2P 2P2n2i5P 2P3n6P2n2i�P�n�ASCII�UTF-16�latin-1�strict�replace�encoding�errorsr^rScs[tj|�}�tj|�dddd�}|j��|�|�|��dS)Nrsrnrtrq)rr6rrr)�dataZ	memo_sizeZ
marks_sizer/r)rlrirm�stdsizerrr�check_unpickler�s

z3SizeofTests.test_unpickler.<locals>.check_unpicklerr�d�cSsg|]}t|��qSr)rg)�.0rjrrr�
<listcomp>�s	z.SizeofTests.test_unpickler.<locals>.<listcomp>�cSs-d}x t|�D]}||g}qW|S)Nr)rf)Zdeeprurjrrr�recurse�sz+SizeofTests.test_unpickler.<locals>.recurse�:�2�@��a�)zASCIIrorp)zstrictzreplace)rr_rKrLr)rbrcrrr`rUra�lenrfrr6r)rrhrsrtrrwr}r)rlrirmrvrr�test_unpickler�s6		

3"#
zSizeofTests.test_unpicklerN)rrrrrcrkr�rrrrrZ�s	rZ�_elementtree�xml.etree.ElementTree�cPickler�__builtin__�
basestring�builtins�str�
exceptions�
StandardError�	Exception�UserDictrH�socket�
_socketobject�
SocketTypecCsN||ftkr+t||f\}}n|tkrDt|}n||fS)N)rr)�module�namerrr�mappings

r�cCsN||ftkr+t||f\}}n|tkrDt|}n||fS)N)rr)r�r�rrr�reverse_mappings

r�cCs�ytj|SWn�tk
r�yt|�Wn�tk
rz}z+tjrbtd||f�nt�WYdd}~Xn>tk
r�}ztjr�t|�n�WYdd}~XnXtj|SYnXdS)NzCan't import module %r: %s)	rd�modules�KeyError�
__import__r%r�verbose�printr+)r��excrrr�	getmodules
		
r�cCs9t|�}x&|jd�D]}t||�}qW|S)N�.)r��split�getattr)r�r�r<rmrrr�getattributesr�ccsVxOt|�D]A}t||�}t|t�r
t|t�r
||fVq
q
WdS)N)�dirr��
isinstance�type�
issubclass�
BaseException)�modr��attrrrr�get_exceptions$sr�c@sdeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dS)�CompatPickleTestscCs�ttj��}|tt�O}|dd�tD�O}|dd�tj�D�O}x1|D])}yt|�Wq]tk
r�Yq]Xq]WdS)NcSsh|]\}}|�qSrr)rzr�r�rrr�	<setcomp>.s	z0CompatPickleTests.test_import.<locals>.<setcomp>cSsh|]\}}|�qSrr)rzr�r�rrrr�/s	)�setr�valuesrrrr�r+)rr�r�rrr�test_import+s

zCompatPickleTests.test_importcCs�x�tj�D]�\}}|j||f��eyt|�Wntk
rQYnX|dd�dkr�|j|t�|jt||�nWdQXq
WdS)NrS�_)r�items�subTestr�r+ZassertInrr`)r�module3�module2rrr�test_import_mapping6s
z%CompatPickleTests.test_import_mappingcCsxtj�D]\\}}\}}|j||f||ff���||fdkr�t||�}|jt|t��n�t||�\}}|dd�dkr�|j||f||f�nyt||�}Wnt	k
r�YnX|jt||�|�WdQXq
WdS)Nr��OSErrorrSr�)z
exceptionszOSError)
rr�r�r�Z
assertTruer�r�r�r`r+)rr��name3r��name2r�r�r�rrr�test_name_mappingAs%"
z#CompatPickleTests.test_name_mappingc	CsFx?tj�D]1\}}|j||f��yt|�Wn;tk
rz}ztjrht|�nWYdd}~XnX||ftkrt	j
|d�|krx\tj�D]4\\}}\}}||f||fkr�Pq�q�W|jd||f�nt	j
||�}tj
||�}|j
||�WdQXq
WdS)Nz No reverse mapping from %r to %r)rr�r�r�r+rr�r��ALT_IMPORT_MAPPINGr�getrZfailr`)	rr�r�r�Zm3Zn3Zm2Zn2r�rrr�test_reverse_import_mappingRs"	 %	z-CompatPickleTests.test_reverse_import_mappingcCs�x�tj�D]�\\}}\}}|j||f||ff���yt||�}Wntk
rnYnXt||�\}}||||ftkr�|j||f||f�nt||�\}}|j||f||f�WdQXq
WdS)N)	rr�r�r�r+r��ALT_NAME_MAPPINGr`r�)rr�r�r�r�r�r�r�rrr�test_reverse_name_mappingfs%"
z+CompatPickleTests.test_reverse_name_mappingcCsA|jtdd�d�|jtdd�d�|jtdd�d�|jtdd�d	�|jtdd�d
�x�tt�D]�\}}|j|���|ttfkr�w�n|tk	r�t	|t�r�|jtd|�d�n>|jtd|�d|f�|jtd|�d|f�WdQXq�WdS)Nr�r�r�r�r�)�builtins�	Exception)r�r�)�
exceptionsr�)r��OSError)r�r�)r�r�)
r`r�r�r�r�r��BlockingIOError�ResourceWarningr�r�)rr�r�rrr�test_exceptionsss*

z!CompatPickleTests.test_exceptionscCs�tjd�}xnt|�D]`\}}|j|��C|jtd|�d|f�|jtd|�d|f�WdQXqWdS)Nzmultiprocessing.contextZmultiprocessing)r�
import_moduler�r�r`r�r�)rr�r�r�rrr�test_multiprocessing_exceptions�s
z1CompatPickleTests.test_multiprocessing_exceptionsN)
rrrr�r�r�r�r�r�r�rrrrr�*s
r�cCsptttttttg}trR|jt	t
ttt
ttttttg�ntj|�tjt�dS)N)rrr-r9rCrGr��has_c_implementation�extendrJrMrOrPrQr@rRrXrYr8rZrZrun_unittestZrun_doctestr)Ztestsrrr�	test_main�s	
r��__main__)r�r�)r�zpickle)r�r��builtinszstr)z
exceptionsz
StandardErrorr�z	Exception)�UserDictr�zcollectionsr�)r�r�r�r�)6Z_compat_picklerrrrr�rrrHr)rdZunittestZtestrZtest.pickletesterrrr	r
rrr
rKr�r+rrr-r8r9r@rCrGrJrMrOrPrQrRrXrYZcpython_onlyZTestCaserZr�r�r�r�r�r�r�r�r�rrrrr�<module>sn"

	
B		l