HEX
Server: Apache
System: Linux zacp120.webway.host 4.18.0-553.50.1.lve.el8.x86_64 #1 SMP Thu Apr 17 19:10:24 UTC 2025 x86_64
User: govancoz (1003)
PHP: 8.3.26
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: //usr/local/lib/python3.10/sqlite3/test/__pycache__/transactions.cpython-310.opt-2.pyc
o

�i7�@s�ddlZddlZddlZddlmZddlmZmZedZ	Gdd�dej
�ZGdd�dej
�ZGd	d
�d
ej
�Z
dd�Zd
d�ZedkrJe�dSdS)�N)�LOOPBACK_TIMEOUT)�TESTFN�unlink�
c@sdeZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�Zdd�Z
dS)�TransactionTestscCs<tjttd�|_|j��|_tjttd�|_|j��|_dS)N)�timeout)	�sqlite�connectr�TIMEOUT�con1�cursor�cur1�con2�cur2��self�r�6/usr/local/lib/python3.10/sqlite3/test/transactions.py�setUp"szTransactionTests.setUpcCsBz|j��|j��|j��|j��Wtt�dStt�w�N)r
�closerrrrrrrrr�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�$test_dml_does_not_auto_commit_before4s
z5TransactionTests.test_dml_does_not_auto_commit_beforecCsB|j�d�|j�d�|j�d�|j��}|�t|�d�dS)Nrrrrrr rrr�test_insert_starts_transaction<s

z/TransactionTests.test_insert_starts_transactioncCsX|j�d�|j�d�|j��|j�d�|j�d�|j��d}|�|d�dS)Nrrzupdate test set i=6rr�)r
rr�commitrZfetchonerr rrr�test_update_starts_transactionCs
z/TransactionTests.test_update_starts_transactioncCsX|j�d�|j�d�|j��|j�d�|j�d�|j��}|�t|�d�dS)Nrrzdelete from testr��r
rrr%rrrrr rrr�test_delete_starts_transactionLs

z/TransactionTests.test_delete_starts_transactioncCsl|j�d�|j�d�|j��|j�d�|j�d�|j��}|�t|�d�|�|ddd�dS)Nrrzreplace into test(i) values (6)rr'rr$r(r rrr�test_replace_starts_transactionUs

z0TransactionTests.test_replace_starts_transactioncCs�|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_levelrrrrr rrr�test_toggle_auto_commit_s

z(TransactionTests.test_toggle_auto_commitcCsV|j�d�|j�d�|�tj��|j�d�Wd�dS1s$wYdS�Nrr)r
r�assertRaisesr�OperationalErrorrrrrr�test_raise_timeoutos
"�z#TransactionTests.test_raise_timeoutcCs`	|j�d�|j�d�|�tj��|j�d�Wd�n1s$wY|j��dSr,)r
rr-rr.rrr%rrrr�test_lockingus�zTransactionTests.test_lockingcCst	t�d�}|��}|�d�|�d�|�d�|��|�tj��
|��Wd�dS1s3wYdS)N�:memory:zcreate table test(x)zinsert into test(x) values (5)z&select 1 union select 2 union select 3)rr	rr�rollbackr-ZInterfaceErrorr)r�con�currrr� test_rollback_cursor_consistency�s




"�z1TransactionTests.test_rollback_cursor_consistencyN)�__name__�
__module__�__qualname__rrr"r#r&r)r*r+r/r0r5rrrrr!s		
rc@s,eZdZdd�Zdd�Zdd�Zdd�Zd	S)
�SpecialCommandTestscCst�d�|_|j��|_dS�Nr1)rr	r3rr4rrrrr�szSpecialCommandTests.setUpcC�(|j�d�|j�d�|j�d�dS)Nrrzdrop table test�r4rrrrr�test_drop_table��z#SpecialCommandTests.test_drop_tablecCr;)Nrrzpragma count_changes=1r<rrrr�test_pragma�r>zSpecialCommandTests.test_pragmacCs|j��|j��dSr)r4rr3rrrrr�s
zSpecialCommandTests.tearDownN)r6r7r8rr=r?rrrrrr9�s
r9c@s4eZdZdd�Zdd�Zdd�Zdd�Zd	d
�ZdS)�TransactionalDDLcCst�d�|_dSr:)rr	r3rrrrr�szTransactionalDDL.setUpcCs6|j�d�|j��|j�d���}|�|g�dS)Nr�select * from test)r3rr2rr)r�resultrrr�'test_ddl_does_not_autostart_transaction�s
z8TransactionalDDL.test_ddl_does_not_autostart_transactioncC�`|j�d�|j�d�|j��|�tj��|j�d�Wd�dS1s)wYdS)Nzbegin immediaterrA�r3rr2r-rr.rrrr� test_immediate_transactional_ddl��
"�z1TransactionalDDL.test_immediate_transactional_ddlcCrD)NZbeginrrArErrrr�test_transactional_ddl�rGz'TransactionalDDL.test_transactional_ddlcCs|j��dSr)r3rrrrrr�szTransactionalDDL.tearDownN)r6r7r8rrCrFrHrrrrrr@�s		r@cCstttg}t�dd�|D��S)NcSsg|]	}t���|��qSr)�unittestZ
TestLoaderZloadTestsFromTestCase)�.0�trrr�
<listcomp>�szsuite.<locals>.<listcomp>)r9rr@rIZ	TestSuite)Ztestsrrr�suite�s��rMcCst��}|�t��dSr)rIZTextTestRunner�runrM)Zrunnerrrr�test�srO�__main__)�osrIZsqlite3rZtest.supportrZtest.support.os_helperrrr
ZTestCaserr9r@rMrOr6rrrr�<module>so!

�