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_shelve.cpython-34.pyc

�
f f~�@sbddlZddlZddlZddlmZddlmZddlmZdd�Z	Gdd�de�Z
Gd	d
�d
ej�ZddlmZGdd
�d
ej
�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�ZGdd�de�Zdd�Zedkr^e�ndS)�N)�support)�MutableMapping)�dbm_iteratorcCs
|jd�S)Nzlatin-1)�decode)�s�r�5/opt/alt/python34/lib64/python3.4/test/test_shelve.py�L1sr	c@s|eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	e	Z
dd�Zdd�ZdS)�byteskeydictz Mapping that supports bytes keyscCs
i|_dS)N)�d)�selfrrr�__init__szbyteskeydict.__init__cCs|jt|�S)N)rr	)r�keyrrr�__getitem__szbyteskeydict.__getitem__cCs||jt|�<dS)N)rr	)rr�valuerrr�__setitem__szbyteskeydict.__setitem__cCs|jt|�=dS)N)rr	)rrrrr�__delitem__szbyteskeydict.__delitem__cCs
t|j�S)N)�lenr)rrrr�__len__szbyteskeydict.__len__ccs,x%|jj�D]}|jd�VqWdS)Nzlatin-1)r�keys�encode)r�krrr�iterkeysszbyteskeydict.iterkeyscCst|j��S)N)�listr)rrrrr#szbyteskeydict.keyscCs
t|j�S)N)r
r)rrrr�copy&szbyteskeydict.copyN)
�__name__�
__module__�__qualname__�__doc__r
rrrrr�__iter__rrrrrrr
sr
c@s�eZdZdZdd�Zdd�Zdd�Zdd	�Zd
d�Zdd
�Z	dd�Z
dd�Zdd�Zdd�Z
dS)�TestCasezshelftemp.dbcCs2x+tj|jd�D]}tj|�qWdS)N�*)�glob�fnr�unlink)r�frrr�tearDown.szTestCase.tearDowncCs�i}tj|dddd�}ddddg|d<|j|dddddg�|jt|�d�|j�|jtt|�y|dWntk
r�YnX|jd	�dS)
N�protocol��	writebackF����key1z"Closed shelf should not find a key)�shelve�Shelf�assertEqualr�close�assertRaises�
ValueError�fail)r�d1rrrr�
test_close2s 

zTestCase.test_closecCsLtj|jdd�}z"d|d<|j|dd	�Wd|j�XdS)
Nr'rr*r(r+r,r-)r*r(r+r,)r*r(r+r,)r.�openr#r0r1)rrrrr�test_ascii_file_shelfAs

zTestCase.test_ascii_file_shelfcCsLtj|jdd�}z"d|d<|j|dd�Wd|j�XdS)	Nr'r*r(r+r,r-)r*r(r+r,)r*r(r+r,)r.r7r#r0r1)rrrrr�test_binary_file_shelfIs

zTestCase.test_binary_file_shelfcCsLtj|jdd�}z"d|d<|j|dd�Wd|j�XdS)	Nr'r(r*r+r,r-)r*r(r+r,)r*r(r+r,)r.r7r#r0r1)rrrrr�test_proto2_file_shelfQs

zTestCase.test_proto2_file_shelfcCs�t�}tj|dd�}d|d<|j|dd	�|j�t�}tj|dd�}d
|d<|j|dd�|j�|jt|�d�|jt|�d�|j|j�|j��dS)Nr'rr*r(r+r,r-)r*r(r+r,)r*r(r+r,)r*r(r+r,)r*r(r+r,)r
r.r/r0r1r�assertNotEqual�items)rr5r�d2rrr�test_in_memory_shelfYs	

	

zTestCase.test_in_memory_shelfcCs]t�}tj|dddd�}ddddg|d<|j|dddddg�|djd	�|j|dddddg�|j�t�}tj|dddd
�}ddddg|d<|j|dddddg�|djd	�|j|dddddd	g�|j�|jt|�d�|jt|�d�dS)Nr'r(r)Fr*r+r,r-�T)r
r.r/r0�appendr1r)rr5rr=rrr�test_mutable_entryis 	  
	 #
zTestCase.test_mutable_entrycCs�i}d}dgtj|�|<|j|jd�|�dgtj|dd�|<|j|jd�|�tj|dd�}|jt|j|dg�dS)NuPöpr*zutf-8Zkeyencodingzlatin-1�ascii)r.r/ZassertInrr2�UnicodeEncodeErrorr)rrrrrrr�test_keyencoding}szTestCase.test_keyencodingcCs�i}d}|jd�}tj|dd�}dg||<||}|djd�|j�||}|j||�dS)Nrzutf-8r)Tr*r()rr.r/r@r1r;)rrr�
encodedkeyrZp1Zp2rrr�&test_writeback_also_writes_immediately�s



z/TestCase.test_writeback_also_writes_immediatelycCs�i}tj|dddd��S}ddddg|d<|j|dddddg�|jt|�d�WdQX|jtt|�y|dWntk
r�YnX|jd	�dS)
Nr'r(r)Fr*r+r,r-z"Closed shelf should not find a key)r.r/r0rr2r3r4)rr5rrrr�	test_with�s 
zTestCase.test_withN)rrrr#r&r6r8r9r:r>rArDrFrGrrrrr *s

r )�
mapping_testsc@sUeZdZdZdZdd�ZejZdd�Z	dd�Z
d	d
�ZdS)�TestShelveBasezshelftemp.dbrcOs#g|_tjj|||�dS)N)�_dbrH�BasicTestMappingProtocolr
)r�args�kwrrrr
�s	zTestShelveBase.__init__cCsidd6dd6dd6S)	NZvalue1r-r(Zkey2r*r+Zkey3)r*r(r+r)rrrr�
_reference�szTestShelveBase._referencecCsl|jr$tjt�|j�}n4|jd7_tj|jt|j�|j�}|j	j
|�|S)Nr*)�_in_memr.r/r
�_args�counterr7r#�strrJr@)r�xrrr�_empty_mapping�s	%zTestShelveBase._empty_mappingcCsex|jD]}|j�q
Wg|_|jsax.tj|jd�D]}tj|�qGWndS)Nr!)rJr1rOr"r#rr$)rZdbr%rrrr&�s		zTestShelveBase.tearDownN)rrrr#rQr
r.r/Z	type2testrNrTr&rrrrrI�s	rIc@s#eZdZidd6ZdZdS)�TestAsciiFileShelverr'FN)rrrrPrOrrrrrU�s
rUc@s#eZdZidd6ZdZdS)�TestBinaryFileShelver*r'FN)rrrrPrOrrrrrV�s
rVc@s#eZdZidd6ZdZdS)�TestProto2FileShelver(r'FN)rrrrPrOrrrrrW�s
rWc@s#eZdZidd6ZdZdS)�TestAsciiMemShelverr'TN)rrrrPrOrrrrrX�s
rXc@s#eZdZidd6ZdZdS)�TestBinaryMemShelver*r'TN)rrrrPrOrrrrrY�s
rYc@s#eZdZidd6ZdZdS)�TestProto2MemShelver(r'TN)rrrrPrOrrrrrZ�s
rZc	Cs7x0t�D]%}tjttttttt	�q
WdS)N)
rrZrun_unittestrUrVrWrXrYrZr )�modulerrr�	test_main�sr\�__main__)Zunittestr.r"ZtestrZcollections.abcrZ
test.test_dbmrr	r
r rHrKrIrUrVrWrXrYrZr\rrrrr�<module>s&{