Your IP : 216.73.217.32


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



���]7�@s�ddlZddlZddlZddlZejjd�ZyddlmZWne	k
rpdZYnXejj
Zdd�Zdd�Z
Gdd	�d	�ZGd
d�dej�Zdd
�Zedkr�ej�dS)�N�dbm)�ndbmccs[xTtjD]I}yt|ddg�}Wntk
r@w
YnX|tj|<|Vq
WdS)N�fromlist�open)rZ_names�
__import__�ImportErrorZ_modules)�name�mod�r
�-/opt/alt/python35/lib64/python3.5/test_dbm.py�dbm_iterators

rcCs2x+tjtd�D]}tjj|�qWdS)N�*)�glob�_fname�test�support�unlink)�fr
r
r�delete_files"src@s�eZdZddddddddd	d
ddiZd
d�Zdd�Zdd�Zdd�Zdd�Zdd�Z	dd�Z
dd�Zdd�Zdd �Z
d!d"�Zd#d$�Zd%d&�Zd'd(�Zd)S)*�AnyDBMTestCase�asPython:�bsProgramming�csthe�dswayrsGuido�gsintendedcCsNtjtd�}x+|jD] }|j|||jd�<qW|j�dS)N�n�ascii)rrr�_dict�encode�close)�selfr�kr
r
r�init_db2szAnyDBMTestCase.init_dbcCsHtdd�|j�D��}t|jj��}|j||�|S)Ncss|]}|jd�VqdS)rN)�decode)�.0r!r
r
r�	<genexpr>9sz-AnyDBMTestCase.keys_helper.<locals>.<genexpr>)�sorted�keysr�assertEqual)r rr'Zdkeysr
r
r�keys_helper8szAnyDBMTestCase.keys_helpercCs |jt|jjt��dS)N)�
assertTrue�
issubclass�module�error�OSError)r r
r
r�
test_error>szAnyDBMTestCase.test_errorcCs|jtjtjt�dS)N)�assertRaisesrr-rr)r r
r
r�test_anydbm_not_existingAsz'AnyDBMTestCase.test_anydbm_not_existingcCswtjtd�}|jt|j��g�x+|jD] }|j|||jd�<q8W|j|�|j	�dS)Nrr)
rrrr(�listr'rr�read_helperr)r r�keyr
r
r�test_anydbm_creationDs
z#AnyDBMTestCase.test_anydbm_creationcCsLtjjt�tjtd�}|j|j�|jt	|�d�dS)Nrr)
rrZcreate_empty_filerrr�
addCleanuprr(�len)r rr
r
r�8test_anydbm_creation_n_file_exists_with_invalid_contentsLszGAnyDBMTestCase.test_anydbm_creation_n_file_exists_with_invalid_contentscCsL|j�tjtd�}d|jd<|d<|j|�|j�dS)Nrsindentedr�g)r"rrrrr3r)r rr
r
r�test_anydbm_modificationTs


z'AnyDBMTestCase.test_anydbm_modificationcCs7|j�tjtd�}|j|�|j�dS)N�r)r"rrrr3r)r rr
r
r�test_anydbm_read[s

zAnyDBMTestCase.test_anydbm_readcCs9|j�tjtd�}|j|�}|j�dS)Nr;)r"rrrr)r)r rr'r
r
r�test_anydbm_keysas
zAnyDBMTestCase.test_anydbm_keyscCs�ttjdd�dkr(|jd�tjtd�}|j|j�g�d|d<|j|j�dg�|jd|�|j|dd�|j|j	d�d�|j|j
d�d�|j�dS)NZlibraryzBerkeley DBzCBerkeley DB doesn't distinguish the empty value from the absent oner�sempty)�getattrr�_defaultmodZskipTestrrr(r'�assertIn�get�
setdefaultr)r rr
r
r�test_empty_valuegs

zAnyDBMTestCase.test_empty_valuecCsI|j�tjtd�}djd�}|j||�|j�dS)Nr;rr)r"rrrrrAr)r rr4r
r
r�test_anydbm_accessus

z!AnyDBMTestCase.test_anydbm_accesscCsK|j|�}x5|jD]*}|j|j|||jd��qWdS)Nr)r)rr(r)r rr'r4r
r
rr3}szAnyDBMTestCase.read_helpercCst�dS)N)r)r r
r
r�tearDown�szAnyDBMTestCase.tearDowncCs|jt_t�dS)N)r,rr@r)r r
r
r�setUp�szAnyDBMTestCase.setUpN)�__name__�
__module__�__qualname__rr"r)r/r1r5r8r:r<r=rDrEr3rFrGr
r
r
rr)s(rc@saeZdZdd�Zejedd�dd��Zdd�Zd	d
�Z	dd�Z
d
S)�WhichDBTestCasecCs�x�t�D]�}|j}|dkr(q
t�|jtd�}|j�|j||jjt��|jtd�}d|d<|j	d|�|j
|ddk�|j�|j||jjt��q
WdS)Nzdbm.dumbr�w�1)rrHrrrrr(r�whichdbrAr*)r r,rrr
r
r�test_whichdb�s	


zWhichDBTestCase.test_whichdb�reasonzTest requires ndbmcCscdjt�}t|d��|jtjj|�WdQRX|j|jj	|dd���dS)Nz
{}_ndbm.dbrL����)
�formatrrr6rrrZassertIsNonerrN)r Zdb_filer
r
r�test_whichdb_ndbm�sz!WhichDBTestCase.test_whichdb_ndbmcCst�dS)N)r)r r
r
rrF�szWhichDBTestCase.tearDowncCsTt�tjj|_tj|jd�|_|jj�tjj	d�|_dS)Nrr)
rrr�TESTFN�filenamerrrrZimport_fresh_module)r r
r
rrG�s

zWhichDBTestCase.setUpcstj�jd��_�j�jj�g�ddg}x!|D]\}}|�j|<qDW�jt�jj��tdd�|D���x>|D]6\}}�j|�j��j�j||�q�W�jd�j��j	t
�fd	d
���jj�dS)
Nr�a�b�12345678910�019237410982340912840198242css|]\}}|VqdS)Nr
)r$r!�vr
r
rr%�sz,WhichDBTestCase.test_keys.<locals>.<genexpr>sxxxcs�jdS)Nsxxx)rr
)r r
r�<lambda>�sz+WhichDBTestCase.test_keys.<locals>.<lambda>)rWrX)rYrZ)rrrVrr(r'r&rAZassertNotInr0�KeyErrorr)r rr!r[r
)r r�	test_keys�s2zWhichDBTestCase.test_keysN)rHrIrJrO�unittestZ
skipUnlessrrTrFrGr^r
r
r
rrK�s
!rKcCsmg}x@t�D]5}|jtd|jttjfd|i��qWdd�|D�}|j|�|S)Nz	TestCase-r,cSsg|]}tj|��qSr
)r_Z	makeSuite)r$rr
r
r�
<listcomp>�s	zload_tests.<locals>.<listcomp>)r�append�typerHrr_�TestCaseZaddTests)�loaderZtests�pattern�classesr	Zsuitesr
r
r�
load_tests�s
rg�__main__)�osr_rZtest.supportrr�
import_modulerrrrUrrrrrcrKrgrH�mainr
r
r
r�<module>s 
a8