Your IP : 216.73.216.52


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



��Yf
�@s�ddlmZejd�ZddlZddlZddlmZmZm	Z	eZ
Gdd�dej�Ze
dkr�ej�dS)�)�supportzdbm.gnuN)�verbose�TESTFN�unlinkc@sdeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dS)�TestGdbmcCs
d|_dS)N)�g)�self�r	�6/opt/alt/python35/lib64/python3.5/test/test_dbm_gnu.py�setUpszTestGdbm.setUpcCs*|jdk	r|jj�tt�dS)N)r�closer�filename)rr	r	r
�tearDowns
zTestGdbm.tearDowncs�tjtd��_�j�jj�g�d�jd<d�jd<d�jd<t�jj��}�j|tddd	g���jd�j��jd�j��j�jdd��jj�}x9|r�j||�|j	|��jj
|�}q�W�jt�fd
d���j�jj
dd
�d
��j�jjdd
�d
��j�jdd
�dS)N�c�b�aZ019237410982340912840198242Z12345678910sdatasbytes�as12345678910cs�jdS)NZxxx)rr	)rr	r
�<lambda>#sz+TestGdbm.test_key_methods.<locals>.<lambda>sxxxsfoo)�gdbm�openr
r�assertEqual�keys�setZassertInZfirstkey�removeZnextkey�assertRaises�KeyError�get�
setdefault)rZkey_set�keyr	)rr
�test_key_methodss&


	
zTestGdbm.test_key_methodscs�tt��jtjtjtd�tjtd��_�jj��jtj�fdd���jtjdd��dS)N�rrcs�jdS)Nr)rr	)rr	r
r0sz0TestGdbm.test_error_conditions.<locals>.<lambda>cSstjtd�j�S)NZrx)rrr
rr	r	r	r
r2s)rr
rr�errorrrr)rr	)rr
�test_error_conditions)s

zTestGdbm.test_error_conditionscCs�ttj�}|td�}x6t|�D](}tjt|�|_|jj�q,W|td�}xE|D]=}x4|D],}tjt||�|_|jj�q|WqoWdS)NZfsuZcrwn)rrZ
open_flags�sortedrr
rr)r�allZmodes�mode�flagsZflagr	r	r
�
test_flags4s

zTestGdbm.test_flagscCs�tjtd�|_tjjt�}dd|jd<tjjt�}|j||k�|jd=|jtjjt�|�|jj	�tjjt�}|j||ko�|kn�dS)Nr�xi')
rrr
r�os�path�getsizeZ
assertTruerZ
reorganize)rZsize0Zsize1Zsize2r	r	r
�test_reorganizeDs

zTestGdbm.test_reorganizecCs�tjtd��}d|d<WdQRXtjtd��&}|jt|j��dg�WdQRX|jtj��}|j�WdQRX|jt|j	�d�dS)Nrzcontext managerzgdbm context managerr sgdbm context managerz#GDBM object has already been closed)
rrr
r�listrrr!�strZ	exception)rZdb�cmr	r	r
�test_context_managerTs&zTestGdbm.test_context_managerN)
�__name__�
__module__�__qualname__rrrr"r'r,r0r	r	r	r
r
sr�__main__)Ztestr�
import_modulerZunittestr)Ztest.supportrrrr
ZTestCaserr1�mainr	r	r	r
�<module>sV