Your IP : 216.73.216.213


Current Path : /opt/alt/python34/lib64/python3.4/sqlite3/test/__pycache__/
Upload File :
Current File : //opt/alt/python34/lib64/python3.4/sqlite3/test/__pycache__/factory.cpython-34.pyo

�
e f�&�@s.ddlZddlZddlmZGdd�dej�Zdd�ZGdd�dej�Z	Gd	d
�d
ej
�ZGdd�dej
�ZGd
d�dej
�Z
Gdd�dej
�ZGdd�dej
�ZGdd�dej
�Zdd�Zdd�Zedkr*e�ndS)�N)�Sequencec@seZdZdd�ZdS)�MyConnectioncOstjj|||�dS)N)�sqlite�
Connection�__init__)�self�args�kwargs�r
�9/opt/alt/python34/lib64/python3.4/sqlite3/test/factory.pyrszMyConnection.__init__N)�__name__�
__module__�__qualname__rr
r
r
rrsrcCs<i}x/t|j�D]\}}||||d<qW|S)Nr)�	enumerateZdescription)�cursor�row�d�idx�colr
r
r�dict_factory src@seZdZdd�ZdS)�MyCursorcOs#tjj|||�t|_dS)N)r�Cursorrr�row_factory)rrr	r
r
rr'szMyCursor.__init__N)rr
rrr
r
r
rr&src@s4eZdZdd�Zdd�Zdd�ZdS)�ConnectionFactoryTestscCstjddt�|_dS)Nz:memory:�factory)r�connectr�con)rr
r
r�setUp,szConnectionFactoryTests.setUpcCs|jj�dS)N)r�close)rr
r
r�tearDown/szConnectionFactoryTests.tearDowncCs|j|jt�dS)N)�assertIsInstancerr)rr
r
r�CheckIsInstance2sz&ConnectionFactoryTests.CheckIsInstanceN)rr
rrrr!r
r
r
rr+src@s4eZdZdd�Zdd�Zdd�ZdS)�CursorFactoryTestscCstjd�|_dS)Nz:memory:)rrr)rr
r
rr6szCursorFactoryTests.setUpcCs|jj�dS)N)rr)rr
r
rr9szCursorFactoryTests.tearDowncCs)|jjdt�}|j|t�dS)Nr)rrrr )r�curr
r
rr!<sz"CursorFactoryTests.CheckIsInstanceN)rr
rrrr!r
r
r
rr"5sr"c@s4eZdZdd�Zdd�Zdd�ZdS)�RowFactoryTestsBackwardsCompatcCstjd�|_dS)Nz:memory:)rrr)rr
r
rrAsz$RowFactoryTestsBackwardsCompat.setUpcCsL|jjdt�}|jd�|j�}|j|t�|j�dS)Nrzselect 4+5 as foo)rrr�execute�fetchoner �dictr)rr#rr
r
r�CheckIsProducedByFactoryDs

z7RowFactoryTestsBackwardsCompat.CheckIsProducedByFactorycCs|jj�dS)N)rr)rr
r
rrKsz'RowFactoryTestsBackwardsCompat.tearDownN)rr
rrr(rr
r
r
rr$@sr$c@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�ZdS)�RowFactoryTestscCstjd�|_dS)Nz:memory:)rrr)rr
r
rrOszRowFactoryTests.setUpcCs>dd�|j_|jjd�j�}|j|t�dS)NcSs
t|�S)N)�list)r#rr
r
r�<lambda>Ssz4RowFactoryTests.CheckCustomFactory.<locals>.<lambda>zselect 1, 2)rrr%r&r r*)rrr
r
r�CheckCustomFactoryRsz"RowFactoryTests.CheckCustomFactorycCs�tj|j_|jjd�j�}|j|tj�|d|d}}|j|dd�|j|dd�|d|d}}|j|dd	�|j|dd
�|j|ddd�|j|ddd
�|j|ddd�|j|ddd�|jt	��
|dWdQX|jt	��
|dWdQX|jt	��
|dWdQX|jt	��
|dWdQXdS)Nzselect 1 as a, 2 as b�a�b�z$by name: wrong result for column 'a'��A�Bz$by name: wrong result for column 'A'z$by name: wrong result for column 'B'rz#by index: wrong result for column 0z#by index: wrong result for column 1z$by index: wrong result for column -1z$by index: wrong result for column -2�c�i����������lC)
r�Rowrrr%r&r �assertEqual�assertRaises�
IndexError)rrZcol1Zcol2r
r
r�CheckSqliteRowIndexWs*z#RowFactoryTests.CheckSqliteRowIndexcCs<tj|j_|jjd�j�}x|D]}q.WdS)z$Checks if the row object is iterablezselect 1 as a, 2 as bN)rr8rrr%r&)rrrr
r
r�CheckSqliteRowIterrs
z"RowFactoryTests.CheckSqliteRowItercCsUtj|j_|jjd�j�}t|�}|j||d|df�dS)z4Checks if the row object can be converted to a tuplezselect 1 as a, 2 as br-r.N)rr8rrr%r&�tupler9)rr�tr
r
r�CheckSqliteRowAsTupleysz%RowFactoryTests.CheckSqliteRowAsTuplecCsgtj|j_|jjd�j�}t|�}|j|d|d�|j|d|d�dS)zCChecks if the row object can be correctly converted to a dictionaryzselect 1 as a, 2 as br-r.N)rr8rrr%r&r'r9)rrrr
r
r�CheckSqliteRowAsDict�s
z$RowFactoryTests.CheckSqliteRowAsDictcCstj|j_|jjd�j�}|jjd�j�}|jjd�j�}|j||�|j||�|j||k�|j||k�|j||k�|j||k�|j||�|jt	|�t	|��|j
||�|j
t	|�t	|��dS)z6Checks if the row object compares and hashes correctlyzselect 1 as a, 2 as bzselect 1 as a, 3 as bN)rr8rrr%r&r9�
assertTrueZassertFalse�hashZassertNotEqual)rZrow_1Zrow_2Zrow_3r
r
r�CheckSqliteRowHashCmp�sz%RowFactoryTests.CheckSqliteRowHashCmpcCsotj|j_|jjd�j�}t|�}|jtt	|��tt	|���|j
|t�dS)z2 Checks if the row object can act like a sequence zselect 1 as a, 2 as bN)rr8rrr%r&r>r9r*�reversedr r)rrZas_tupler
r
r�CheckSqliteRowAsSequence�s
(z(RowFactoryTests.CheckSqliteRowAsSequencecCsHGdd�dt�}|jjd|�}|jttj|f�dS)Nc@seZdZejZdS)z8RowFactoryTests.CheckFakeCursorClass.<locals>.FakeCursorN)rr
rrr�	__class__r
r
r
r�
FakeCursor�srHr)�strrrr:�	TypeErrorrr8)rrHr#r
r
r�CheckFakeCursorClass�sz$RowFactoryTests.CheckFakeCursorClasscCs|jj�dS)N)rr)rr
r
rr�szRowFactoryTests.tearDownN)
rr
rrr,r<r=r@rArDrFrKrr
r
r
rr)Ns	r)c@sXeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�TextFactoryTestscCstjd�|_dS)Nz:memory:)rrr)rr
r
rr�szTextFactoryTests.setUpcCsEd}|jjd|f�j�}|jt|d�td�dS)NuÖsterreichzselect ?rztype of row[0] must be unicode)rr%r&r9�typerI)r�austriarr
r
r�CheckUnicode�szTextFactoryTests.CheckUnicodecCsqt|j_d}|jjd|f�j�}|jt|d�td�|j|d|jd�d�dS)NuÖsterreichzselect ?rztype of row[0] must be byteszutf-8z(column must equal original data in UTF-8)�bytesr�text_factoryr%r&r9rM�encode)rrNrr
r
r�CheckString�s
zTextFactoryTests.CheckStringcCstdd�|j_d}|jjd|f�j�}|jt|d�td�|j|djd�d�dS)	NcSst|dd�S)Nzutf-8�ignore)rI)�xr
r
rr+�sz.TextFactoryTests.CheckCustom.<locals>.<lambda>uÖsterreichzselect ?rztype of row[0] must be unicodeZreichz!column must contain original data)	rrQr%r&r9rMrIrB�endswith)rrNrr
r
r�CheckCustom�s
zTextFactoryTests.CheckCustomcCs�tj|j_d}d}|jjd|f�j�}|jjd|f�j�}|jt|d�td�|jt|d�td�dS)NuÖsterreichZ
Deutchlandzselect ?rz!type of non-ASCII row must be strz"type of ASCII-only row must be str)	rZOptimizedUnicoderrQr%r&r9rMrI)rrNZgermanyZa_rowZd_rowr
r
r�CheckOptimizedUnicode�sz&TextFactoryTests.CheckOptimizedUnicodecCs|jj�dS)N)rr)rr
r
rr�szTextFactoryTests.tearDownN)	rr
rrrOrSrWrXrr
r
r
rrL�srLc@sXeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
S)�%TextFactoryTestsWithEmbeddedZeroBytescCs9tjd�|_|jjd�|jjdd�dS)Nz:memory:zcreate table test (value text)z#insert into test (value) values (?)�ab)rZ)rrrr%)rr
r
rr�sz+TextFactoryTestsWithEmbeddedZeroBytes.setUpcCsJ|jjd�j�}|jt|d�t�|j|dd�dS)Nzselect value from testrrZ)rr%r&�assertIsrMrIr9)rrr
r
rrS�sz1TextFactoryTestsWithEmbeddedZeroBytes.CheckStringcCsVt|j_|jjd�j�}|jt|d�t�|j|dd�dS)Nzselect value from testrsab)rPrrQr%r&r[rMr9)rrr
r
r�
CheckBytes�sz0TextFactoryTestsWithEmbeddedZeroBytes.CheckBytescCsVt|j_|jjd�j�}|jt|d�t�|j|dd�dS)Nzselect value from testrsab)�	bytearrayrrQr%r&r[rMr9)rrr
r
r�CheckBytearray�sz4TextFactoryTestsWithEmbeddedZeroBytes.CheckBytearraycCs\dd�|j_|jjd�j�}|jt|d�t�|j|dd�dS)NcSs|S)Nr
)rUr
r
rr+�szCTextFactoryTestsWithEmbeddedZeroBytes.CheckCustom.<locals>.<lambda>zselect value from testrsab)rrQr%r&r[rMrPr9)rrr
r
rrW�sz1TextFactoryTestsWithEmbeddedZeroBytes.CheckCustomcCs|jj�dS)N)rr)rr
r
rr�sz.TextFactoryTestsWithEmbeddedZeroBytes.tearDownN)	rr
rrrSr\r^rWrr
r
r
rrY�srYcCs�tjtd�}tjtd�}tjtd�}tjtd�}tjtd�}tjtd�}tj||||||f�S)NZCheck)	�unittestZ	makeSuiterr"r$r)rLrYZ	TestSuite)Zconnection_suiteZcursor_suiteZrow_suite_compatZ	row_suiteZ
text_suiteZtext_zero_bytes_suiter
r
r�suite�sr`cCs tj�}|jt��dS)N)r_ZTextTestRunnerZrunr`)Zrunnerr
r
r�testsra�__main__)r_Zsqlite3rZcollections.abcrrrrrrZTestCaserr"r$r)rLrYr`rarr
r
r
r�<module>s
b%"