L iBPddlZddlZddlmZddlmZddlmZddlmZddl m Z ddl m Z d d lm Z d d lm Z d d lmZd d lmZd dlmZd dlmZd dlmZd dlmZGddej(ZGddej(ZGddej.ej0Zy)N)engines)fixtures)eq_) requirements)Column)Table)DateTime)func)Integer)select)sql)String)testingtextcreZdZdZedZedZdZdZdZ dZ e jdZ d Zy ) RowFetchTestTc td|tdtdtdtdtd|tdtdtdty) Nplain_pkidT) primary_keydata2 has_datestoday)r rr rr clsmetadatas k/mnt/ssd/data/python-lab/Trading/venv/lib/python3.12/site-packages/sqlalchemy/testing/suite/test_results.py define_tableszRowFetchTest.define_tablessP   4d 3 66": &     4d 3 7H %  c $|j|jjjdddddddddg|j|jjjdt j dd d d d d d gy) Nd1)rrrd2r d3 r)rr)executetablesrinsertrdatetime)r connections r! insert_datazRowFetchTest.insert_data.s JJ   & & ($'$'$'    JJ ' ' ) 1 1$2r1a H I J r#cL|j|jjjj |jjj j j}t|j dt|jdyNr%r&) r,r-rrorder_bycrfirstrrselfr0rows r! test_via_attrzRowFetchTest.test_via_attr>sp  KK ' ' ) 2 24;;3G3G3I3I3L3L M %'  CFFA CHHdr#cX|j|jjjj |jjj j j}t|jddt|jddy)Nrr%rr&) r,r-rrr4r5rr6r_mappingr7s r!test_via_stringzRowFetchTest.test_via_stringFs{  KK ' ' ) 2 24;;3G3G3I3I3L3L M %'  CLL " CLL $'r#c0|j|jjjj |jjj j j}t|ddt|ddy)Nrr%r&) r,r-rrr4r5rr6rr7s r! test_via_intzRowFetchTest.test_via_intNsp  KK ' ' ) 2 24;;3G3G3I3I3L3L M %'  CFA CFDr#c|j|jjjj |jjj j j}t|j|jjj j dt|j|jjj jdyr3) r,r-rrr4r5rr6rr<rr7s r!test_via_col_objectz RowFetchTest.test_via_col_objectVs  KK ' ' ) 2 24;;3G3G3I3I3L3L M %'  CLL--//22 3Q7 CLL--//44 5t  ? :&r#c|jj}|j|jddd|j|jdddddddddg|j |yrbrh)r8r0r]s r!test_executemany_roundtripz1PercentSchemaNamesTest.test_executemany_roundtrips{ 11   "B$O    ";;;   :&r#c||jj}|j|jddd|j|jj |j d|j dddddd ddddg}t |jgd |j|y) Nr*r+rcr[r\rdrerfrg)rdrerfrgrerf) r-r]r,r. returningr5rallri)r8r0r]rEs r!$test_executemany_returning_roundtripz;PercentSchemaNamesTest.test_executemany_returning_roundtrips 11   "B$O ##  " , , + 67  ;;;    FJJL56 :&r#c |jj}|jj}||j||jfD]}t t |j |jj|jdgdt t |j |jj|jdjddgj|jdddg|j |jj|jdj}t |jddt |jdd t |j|jddt |j|jdd |j |jj|jdd it t |j |jj|jdgd y) Nr[))r*r+rorprqr\rfrgrprqr*r+))r*rv)rdrv)rfrv)rerv)r-r]r`rJrlistr,rr4r5wherein_r6r<updatevalues)r8connr]r`r^r9s r!riz$PercentSchemaNamesTest._assert_tables 11 $(KK$I$I!     ! % % + + -   CE LL!8!89L!MN5   LL uww'=>BBAr7KL!%''*"56'" ,, '' (;<eg   Z(! ,  34b 9  UWWZ011 5  UWW%;<=r B? CB  " ) )!78"=   !((*33% 3  2 r#N)rPrQrR__doc__ __requires__rSrTr"rkrmrinsert_executemany_returningrtrirVr#r!rXrXzsN-LK     ' '..'/'&4 r#rXceZdZdZdZdZdZdZejddddfddd dfd de d dfd d dd fdd e d jddfdde d jd d fdde d jdfddddejddgfdd dd fdd ddfdd dZdZd Zd!Zd"Zd#Zy$)%ServerSideCursorsTest)server_side_cursorsTc|jjjdk(rt|jS|jjjdk(r+t dj j}t||S|jjjdvr |jS|jjjdk(r+t dj j}t||S|jjjdk(r |j S|jjjdk(r%d t|jjvS|jjjd vr |jS|jjjd k(r t|d d S|jjjdk(rtt|dd S|jjjdk(r t|d d Sy )Npsycopg2pymysqlzpymysql.cursors)aiomysqlasyncmyaioodbcmysqldbzMySQLdb.cursorsmariadbconnectormysqlconnectorbuffered)asyncpg aiosqlitepg8000 server_sideFpsycopgnameoracledb)enginedialectdriverboolr __import__cursorsSSCursor isinstancerrtyperPlowergetattr)r8cursorsscursors r!_is_server_sidez%ServerSideCursorsTest._is_server_sides ;;   % % 3 $ $ [[ ' '9 4!"34<<EEHfh/ / [[ ' '+M M%% % [[ ' '9 4!"34<<EEHfh/ / [[ ' '+= =& & [[ ' '+; ;T&\%:%:%@%@%BB B [[ ' '+C C%% % [[ ' '8 36=%8 8 [[ ' '9 467 7 [[ ' ': 56=%8 8r#c|rGtjd5tjd|i|_ddd|jStjd|i|_|jS#1swY|jSxYw)NzThe create_engine.server_side_cursors parameter is deprecated and will be removed in a future release. Please use the Connection.execution_options.stream_results parameter.r)options)rexpect_deprecatedrtesting_enginer)r8rs r!_fixturezServerSideCursorsTest._fixtures **  &4424GH  {{"00.0CDDK{{ {{s A33Bcltjdtjjd|S)Nz SELECT (\d+)c ttt|jdj t j S)Nr%)strrintgroupcompilerdb)ms r!z1ServerSideCursorsTest.stringify../s+c&QWWQZ199'**EFr#)rerIsub)r8str_s r! stringifyzServerSideCursorsTest.stringify-s)zz/244044 F  r# global_stringc|dSNselect 1rVrs r!rzServerSideCursorsTest.3s )J2Gr# global_textc$t|dSrrrs r!rzServerSideCursorsTest.7d9Z#89r# global_exprr%global_off_explicitFc$t|dSrrrs r!rzServerSideCursorsTest.>rr# stmt_optionstream_resultsstmt_option_disabledfor_update_exprfor_update_stringc|dS)NzSELECT 1 FOR UPDATErVrs r!rzServerSideCursorsTest.Rs i(=>r#sqlitemssql text_no_ssc$t|dS)N select 42rrs r!rzServerSideCursorsTest.Ysd9[#9:r#text_ss_optioncDt|djdS)NrTr)rexecution_optionsrs r!rzServerSideCursorsTest._s$d9[#9:LL#Mr#iaaaz*engine_ss_arg, statement, cursor_ss_status)id_argnamesc|j|}|j5}t|r!tj||j }t |tr|j|}n|j|}t|j|j||jdddy#1swYyxYw)Nr)rbegincallablerresolve_lambdarrrexec_driver_sqlr,rrrclose)r8 engine_ss_arg statementcursor_ss_statusrr|rEs r!test_ss_cursor_statusz+ServerSideCursorsTest.test_ss_cursor_status2sp}- \\^ t "#22 )S)--i8i0 $$V]]35E F LLN   s BCC c*|jd}|j5}|jdj|j d}|j |j sJ|jdddy#1swYyxYw)NFTrr)rconnectrrrrrr)r8rr|rEs r!test_conn_optionz&ServerSideCursorsTest.test_conn_optionxsu% ^^  ++#,odnnZ89 '' 6 66 LLN'   s AB  Bc$|jd}tdjd}|j5}|jdj |}|j |j rJ dddy#1swYyxYw)NFr%Tr)rrrrr,rr)r8rrMr|rEs r!&test_stmt_enabled_conn_option_disabledz  GOOXw/ 0     :          =g4jk4j"0;((T Or#r)r/rrr assertionsrconfigrschemarr r r r rrrrr TablesTestrrXTestBaseAssertsExecutionResultsrrVr#r!r s ![E8&&[E|| X00| ~O w66Or#