HEX
Server: LiteSpeed
System: Linux us-phx-web1284.main-hosting.eu 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: u300739242 (300739242)
PHP: 8.2.30
Disabled: system, shell_exec, passthru, mysql_list_dbs, ini_alter, dl, symlink, link, chgrp, leak, popen, apache_child_terminate, virtual, mb_send_mail
Upload Files
File: //opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyc
�
���ec@s�ddlmZddlmZddlmZddlmZddlmZddlmZddlmZdd	lmZdd
lm	Z	ddl
mZddlm
Z
dd
lmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZddlmZdejfd��YZdejfd��YZdejfd��YZdejfd��YZdejfd ��YZd!ejefd"��YZ d#ejfd$��YZ!d%S(&i(ttestingi(t
assert_raises(tconfig(tengines(teq_(tfixtures(tne_(tprovide_metadata(trequirements(t set_default_schema_on_connection(tColumn(tTablei(t	bindparam(tevent(texc(tInteger(tliteral_column(tselect(tString(tcompatt
ExceptionTestcBsDeZdZdZeZed��Zej	d��Z
d�ZRS(s�Test basic exception wrapping.

    DBAPIs vary a lot in exception behavior so to actually anticipate
    specific exceptions from real round trips, we need to be conservative.

    teachc
Cs;td|tdtdtdt�tdtd���dS(Nt	manual_pktidtprimary_keyt
autoincrementtdatai2(RR
RtTruetFalseR(tclstmetadata((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt
define_tables+s
cCs�tjj��z}|j�}|j|jjj�idd6dd6�tt	j
|j|jjj�idd6dd6�|j�WdQXdS(NiRtd1R(RtdbtconnecttbegintexecutettablesRtinsertRRtIntegrityErrortrollback(tselftconnttrans((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_integrity_error4s$c	Cs�tjj���}y)|jttd���ts:t�WnCtj	k
r�}t
|�}t
|j�t
|�ks�t�nXtj
r�t|t
�s�t�nt|t
�s�t�WdQXdS(Numéil(RR!R"R$RRRtAssertionErrorRt
DBAPIErrortstrtorigRtpy2kt
isinstance(R)R*terrterr_str((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_exception_with_non_asciiGs%	(t__name__t
__module__t__doc__trun_deletesRt__backend__tclassmethodRRt$duplicate_key_raises_integrity_errorR,R5(((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyRs	tIsolationLevelTestcBs8eZeZdZd�Zd�Zd�Zd�ZRS(tisolation_levelcCs_tjt�}|d}|d}t|�jd|g�}|rN|j�Stjd�dS(Ntdefaultt	supportedt
AUTOCOMMITs(no non-default isolation level available(Rtget_isolation_levelsRtsett
differencetpopt	skip_test(R)tlevelsR?R@ts((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt _get_non_default_isolation_levelcs


cCs'ttjjjtjt�d�dS(NR?(RRR!tdialecttdefault_isolation_levelRRB(R)((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_default_isolation_leveloscCs�|j�}tjj��i}|j�}t||�|jd|�t|j�|�|jj	|j
�t|j�|�WdQXdS(NR>(RIRR!R"tget_isolation_levelRtexecution_optionsRRJtreset_isolation_levelt
connection(R)tnon_defaultR*texisting((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt test_non_default_isolation_levelus
c
Cs�tjt�}|d}x�t|�jdg�D]�}tjj��S}|jd|�t|j	�|�|j
�}|j�t|j	�|�WdQXtjj��}t|j	�|d�WdQXq2WdS(NR@RAR>R?(RRBRRCRDR!R"RNRRMR#R((R)RGt
all_levelstlevelR*R+((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_all_levels�s

	(R>(	R6R7RR:t__requires__RIRLRSRV(((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyR=^s			tAutocommitIsolationTestcBsMeZdZdZeZed��Zd�Zd�Z	d�Z
d�ZRS(Rt
autocommitc
CsAtd|tdtdtdt�tdtd��dt�dS(Nt
some_tableRRRRi2ttest_needs_acid(RR
RRRR(RR((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyR�scCs�|j�}|j|jjj�idd6dd6�|j�t|jt|jjj	j
��|rmdnd�|j��|j|jjj��WdQXdS(NiRs	some dataR(
R#R$R%RZR&R(RtscalarRtcRtNonetdelete(R)R*RYR+((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt_test_conn_autocommits�s$

cCsO|}|jdd�}|j|t�|jj|j�|j|t�dS(NR>RA(RNR`RRJRORPR(R)tconnection_no_transR*tc2((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_autocommit_on�s
cCs|}|j|t�dS(N(R`R(R)RaR*((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_autocommit_off�scCsY|}|jdd�}|j|t�|jdtjt�d�|j|t�dS(NR>RAR?(RNR`RRRBRR(R)RaR*((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt.test_turn_autocommit_off_via_default_iso_level�s	(RY(R6R7R9RWRR:R;RR`RcRdRe(((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyRX�s
				tEscapingTestcBseZed��ZRS(c
Cs|j}td|tdtd���}|jtj�tjj���}|j|j	�t
dd��|j|j	�t
dd��t|jt
|jj�j|jjtd�k��d�t|jt
|jj�j|jjtd�k��d�WdQXdS(	s|test that the DBAPI accommodates for escaped / nonescaped
        percent signs in a way that matches the compiler

        ttRi2ssome % valuessome %% other values'some % value's'some %% other value'N(RRR
RtcreateRR!R#R$R&tdictRR\RR]RtwhereR(R)tmRgR*((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_percent_sign_round_trip�s 	!(R6R7RRl(((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyRf�st WeCanSetDefaultSchemaWEventsTestcBs8eZeZdZd�Zd�Zd�Zd�ZRS(tdefault_schema_name_switchcCsEtjjj}tj�}|j��WdQXt|jj|�dS(N(RR!RJtdefault_schema_nameRttesting_engineR"R(R)Roteng((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_control_case�s

cCs�tjjj}tj�}tj|d�d��}|j��)}|jj	|�}t
|tj�WdQXt
|jj|�dS(NR"cSstt|tj�dS(N(R	Rttest_schema(tdbapi_connectiontconnection_record((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt
on_connect
s(RR!RJRoRRpR
tlistens_forR"t_get_default_schema_nameRRs(R)RoRqRvR*twhat_it_should_be((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_wont_work_wo_insertscCs~tj�}tj|ddt�d��}|j��)}|jj|�}t|t	j
�WdQXt|jjt	j
�dS(NR"R&cSstt|tj�dS(N(R	RRs(RtRu((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyRvs(RRpR
RwRR"RJRxRRRsRo(R)RqRvR*Ry((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyttest_schema_change_on_connects!cCs�tj�}tj|ddt�d��}|j��a}|j�}|jj|�}t	|t
j�|j�|jj|�}t	|t
j�WdQXt	|jj
t
j�dS(NR"R&cWstt|tj�dS(N(R	RRs(Rttarg((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyRv+s(RRpR
RwRR"R#RJRxRRRsR(Ro(R)RqRvR*R+Ry((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt'test_schema_change_works_w_transactions(s!
(Rn(	R6R7RR:RWRrRzR{R}(((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyRm�s				t&FutureWeCanSetDefaultSchemaWEventsTestcBseZRS((R6R7(((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyR~=stDifficultParametersTestcBs�eZeZejdddddd d!d"d#d$d%d&d'd(d)d*d+d,d-d.d/dd�Zeejj	d���Z
ejd��Zed��Z
ed��ZRS(0tboringsper cents
per % cents%percentspar(ens)spercent%(ens)yahscol:onst_starts_with_underscoresdot.ssmore :: %colons%t_namet___names[BracketsAndCase]t	42numberss
percent%signss
has spacess	/slashes/smore/slashessq?markst1params1col:ontargnamest	paramnamec	Csb|}td|tdtdt�t|td�dt��}|j|�|j|j�j	idd6d|6��t
|j|�j|j|dk�}t
|j|�d�t
|j|�j|j|t|�k�}|j|id|6�j�}t
|j|d�t
|j|�j|j|jddg��}|j|�j�}dS(	NRgRRi2tnullableis	some namessome other_name(RR
RRRRRhR$R&tvaluesRR]RjRR\Rtfirstt_mappingtin_(R)R�RPRtnameRgtstmttrow((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt!test_round_trip_same_named_column_s 
*)/c	cs�td|tdt�tdtd��tdtd���}|j|�|j|j�idd6dd6dd6id	d6d
d6dd6idd6d
d6dd6idd6dd6dd6g�|VdS(NtmytabletmyidR�i2tdescitata_descitbtb_desciR]tc_descitdtd_desc(RR
RRRhR$R&(R)RRPR�((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pytmultirow_fixture�s
	cCsc|}t|jj�j|jjt|dd�k�}|j|id|6�}t|d�dS(NtvaluetxR]i(RR]R�RjR�RR\R(R)R�RPR�ttbl1R�tres((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt test_standalone_bindparam_escape�s
!cCs�|}t|jj�j|jjjt|dddg���j|jj�}|j|iddg|6�j	�}t
|ddg�dS(NR�R�R�R�ii(RR]R�RjR�R�Rtorder_bytscalarstallR(R)R�RPR�R�R�R�((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt*test_standalone_bindparam_escape_expanding�s*%(R�(sper cent(s
per % cent(s%percent(spar(ens)(spercent%(ens)yah(scol:ons(R�(sdot.s(smore :: %colons%(R�(R�(s[BracketsAndCase](R�(s
percent%signs(s
has spaces(s	/slashes/(smore/slashes(sq?marks(R�(s1col:on(R6R7RR:Rtcombinationsttough_parametersRRtunusual_column_name_charactersR�tfixtureR�R�R�(((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyRCs:	'N("tRRRRRRRRRt	provisionR	tschemaR
RRR
RRRRRtutilRt
TablesTestRtTestBaseR=RXRfRmtFutureEngineMixinR~R(((sV/opt/alt/python27/lib/python2.7/site-packages/sqlalchemy/testing/suite/test_dialect.pyt<module>	s6?>=!C