Your IP : 216.73.216.213


Current Path : /opt/alt/python39/lib64/python3.9/sqlite3/test/__pycache__/
Upload File :
Current File : //opt/alt/python39/lib64/python3.9/sqlite3/test/__pycache__/transactions.cpython-39.pyc

a

XC?h��@sxddlZddlZddlZdd�ZGdd�dej�ZGdd�dej�ZGdd	�d	ej�Zd
d�Z	dd
�Z
edkrte
�dS)�NcCsdS)NZ
sqlite_testdb�rrr�>/opt/alt/python39/lib64/python3.9/sqlite3/test/transactions.py�get_db_pathsrc@s�eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
e�e
jdkd�dd��Ze�e
jdkd�dd��Zdd�ZdS)�TransactionTestscCsdzt�t��Wnty"Yn0tjt�dd�|_|j��|_tjt�dd�|_	|j	��|_
dS)Ng�������?)Ztimeout)�os�remover�OSError�sqlite�connect�con1�cursor�cur1�con2�cur2��selfrrr�setUpszTransactionTests.setUpcCsP|j��|j��|j��|j��zt�t��WntyJYn0dS�N)	r
�closerrrr�unlinkrrrrrr�tearDown+s



zTransactionTests.tearDowncCsN|j�d�|j�d�|j�d�|j�d�|j��}|�t|�d�dS)N�create table test(i)�insert into test(i) values (5)zcreate table test2(j)�select i from testr�r
�executer�fetchall�assertEqual�len�r�resrrr�CheckDMLDoesNotAutoCommitBefore7s
z0TransactionTests.CheckDMLDoesNotAutoCommitBeforecCsB|j�d�|j�d�|j�d�|j��}|�t|�d�dS)Nrrrrrrrrr�CheckInsertStartsTransaction?s

z-TransactionTests.CheckInsertStartsTransactioncCsX|j�d�|j�d�|j��|j�d�|j�d�|j��d}|�|d�dS)Nrrzupdate test set i=6rr�)r
rr�commitrZfetchonerrrrr�CheckUpdateStartsTransactionFs
z-TransactionTests.CheckUpdateStartsTransactioncCsX|j�d�|j�d�|j��|j�d�|j�d�|j��}|�t|�d�dS)Nrrzdelete from testr��r
rrr$rrrrrrrr�CheckDeleteStartsTransactionOs

z-TransactionTests.CheckDeleteStartsTransactioncCsl|j�d�|j�d�|j��|j�d�|j�d�|j��}|�t|�d�|�|ddd�dS)Nrrzreplace into test(i) values (6)rr&rr#r'rrrr�CheckReplaceStartsTransactionXs

z.TransactionTests.CheckReplaceStartsTransactioncCs�|j�d�|j�d�d|j_|�|jjd�|j�d�|j��}|�t|�d�d|j_|�|jjd�|j�d�|j�d�|j��}|�t|�d�dS)Nrrrr&ZDEFERRED)r
rrZisolation_levelrrrrrrrr�CheckToggleAutoCommitbs

z&TransactionTests.CheckToggleAutoCommit)��r,z.test hangs on sqlite versions older than 3.2.2cCsT|j�d�|j�d�|�tj��|j�d�Wd�n1sF0YdS)Nrr)r
r�assertRaisesr	�OperationalErrorrrrrr�CheckRaiseTimeoutrsz"TransactionTests.CheckRaiseTimeoutcCs^|j�d�|j�d�|�tj��|j�d�Wd�n1sF0Y|j��dS)z�
        This tests the improved concurrency with pysqlite 2.3.4. You needed
        to roll back con2 before you could commit con1.
        rrN)r
rr-r	r.rrr$rrrr�CheckLockingzs
*zTransactionTests.CheckLockingcCspt�d�}|��}|�d�|�d�|�d�|��|�tj��|��Wd�n1sb0YdS)z�
        Checks if cursors on the connection are set into a "reset" state
        when a rollback is done on the connection.
        �:memory:zcreate table test(x)zinsert into test(x) values (5)z&select 1 union select 2 union select 3N)r	r
rr�rollbackr-ZInterfaceErrorr)r�con�currrr�CheckRollbackCursorConsistency�s



z/TransactionTests.CheckRollbackCursorConsistencyN)�__name__�
__module__�__qualname__rrr!r"r%r(r)r*�unittestZskipIfr	Zsqlite_version_infor/r0r5rrrrrs"		
�
�
rc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�SpecialCommandTestscCst�d�|_|j��|_dS�Nr1)r	r
r3rr4rrrrr�szSpecialCommandTests.setUpcCs(|j�d�|j�d�|j�d�dS)Nrrzdrop table test�r4rrrrr�CheckDropTable�sz"SpecialCommandTests.CheckDropTablecCs(|j�d�|j�d�|j�d�dS)Nrrzpragma count_changes=1r<rrrr�CheckPragma�szSpecialCommandTests.CheckPragmacCs|j��|j��dSr)r4rr3rrrrr�s
zSpecialCommandTests.tearDownN)r6r7r8rr=r>rrrrrr:�sr:c@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�TransactionalDDLcCst�d�|_dSr;)r	r
r3rrrrr�szTransactionalDDL.setUpcCs6|j�d�|j��|j�d���}|�|g�dS)Nr�select * from test)r3rr2rr)r�resultrrr�#CheckDdlDoesNotAutostartTransaction�s
z4TransactionalDDL.CheckDdlDoesNotAutostartTransactioncCs^|j�d�|j�d�|j��|�tj��|j�d�Wd�n1sP0YdS)Nzbegin immediaterr@�r3rr2r-r	r.rrrr�CheckImmediateTransactionalDDL�s

z/TransactionalDDL.CheckImmediateTransactionalDDLcCs^|j�d�|j�d�|j��|�tj��|j�d�Wd�n1sP0YdS)NZbeginrr@rCrrrr�CheckTransactionalDDL�s

z&TransactionalDDL.CheckTransactionalDDLcCs|j��dSr)r3rrrrrr�szTransactionalDDL.tearDownN)r6r7r8rrBrDrErrrrrr?�s
		r?cCs4t�td�}t�td�}t�td�}t�|||f�S)NZCheck)r9Z	makeSuiterr:r?Z	TestSuite)Z
default_suiteZspecial_command_suiteZ	ddl_suiterrr�suite�srFcCst��}|�t��dSr)r9ZTextTestRunner�runrF)Zrunnerrrr�test�srH�__main__)rr9Zsqlite3r	rZTestCaserr:r?rFrHr6rrrr�<module>sy!