a „oeàã@s2edƒedƒddlZddlZddlZddlZddlZe ¡Zdejvrbe  e¡Z ej  d¡ne  ¡Z e ej vr‚ej  de ¡e ¡ZddlZddlmZeZdejvr´dej_eejƒedejƒzee ¡ƒZWnd ZYn0e ¡ZiZd Zd Zd ed <ded<ded<ded<edur:deged<need<ded<dZer`edkr`n„edkr˜dZ d Z!dZ"dZ#dZ$dZ%de%e$e e!e"e#fZnLed krÎe &¡r²d!Z'nd"Z'e (e¡Z)d#e'e)fZnd$ed%<ddl*Zej+Zed&eƒed'e,eƒƒGd(d)„d)ej-ƒZ.e/d*kr.e 0¡eedƒdS)+zLThis module depends on the dbapi20 compliance tests created by Stuart Bishopz*(see db-sig mailing list history for info)éNz --packageéz --verboseézTested with dbapi20 %sFztestsql.2txt.us,1430z %s\SQLEXPRESSZadotestÚnameZ adotestuserÚuserZ Sq1234567ÚpasswordZsecurityZmacro_auto_securityÚhostZ macro_getnodezBProvider=MSOLEDBSQL;DataTypeCompatibility=80;MARS Connection=True;ZproviderzI%(provider)s; %(security)s; Initial Catalog=%(name)s;Data Source=%(host)szz-PCZxxxz25.223.161.222Z12345678zPostgreSQL UnicodeÚz2%sDriver={%s};Server=%s;Database=%s;uid=%s;pwd=%s;ZyyyzMicrosoft.ACE.OLEDB.12.0zMicrosoft.Jet.OLEDB.4.0zProvider=%s;Data Source=%sz 25.44.77.176Z proxy_hostzUsing Connection String like=%sz Keywords=%sc@sZeZdZeZefZeZdd„Z dd„Z dd„Z dd„Z d d „Z d d „Zd d„Zdd„ZdS)Ú test_adodbapicCstj ||¡dS©N)Údbapi20ÚDatabaseAPI20TestÚ__init__)ÚselfÚarg©rúDC:\Program Files\Certbot\pkgs\adodbapi\test\test_adodbapi_dbapi20.pyr bsztest_adodbapi.__init__cCs| ¡ d¡dS)NÚ.éÿÿÿÿ)ÚidÚsplit©rrrrÚgetTestMethodNameesztest_adodbapi.getTestMethodNamecCs~tj |¡| ¡dkrz| ¡}|j}|dkr4d}nd}| ¡}z| |¡| ¡Wn Yn0|  ¡|  ¡d|_ dS)NÚ test_callproczMS Jetz³ create procedure templower @theData varchar(50) as select lower(@theData) z´ create procedure templower (theData varchar(50)) as select lower(theData); Z templower) r r ÚsetUprÚ_connectZ dbms_nameÚcursorÚexecuteÚcommitÚcloseZ lower_func)rÚconZengineÚsqlÚcurrrrrhs     ztest_adodbapi.setUpcCsP| ¡dkr@| ¡}| ¡}z| d¡Wn Yn0| ¡tj |¡dS)Nrzdrop procedure templower)rrrrrr r ÚtearDown)rrr!rrrr"ˆs ztest_adodbapi.tearDowncCsd|j|jf}| |¡dS)z)Should create a procedure called deletemezª create procedure deleteme as begin select count(*) from %sbooze select name from %sbooze end N)Z table_prefixr)rr!r rrrÚhelp_nextset_setUp“s þú z test_adodbapi.help_nextset_setUpcCs z| d¡Wn Yn0dS)z*If cleaning up is needed after nextSetTestzdrop procedure deletemeN)r)rr!rrrÚhelp_nextset_tearDown¢sz#test_adodbapi.help_nextset_tearDowncCsò| ¡}zÀ| ¡}|jg| ¡}|D]}| |¡q&| |¡| d¡| ¡}|ddksbJ‚| ¡snJ‚|  ¡}t |ƒt |j ƒksŒJ‚| ¡}|dks¤Jdƒ‚Wz|  |¡W|  ¡qî|  ¡0n$z|  |¡W|  ¡n |  ¡00dS)NZdeletemeréz'No more return sets, should return None)rrZddl1Z _populaterr#ZcallprocZfetchoneZnextsetZfetchallÚlenZsamplesr$r)rrr!Zstmtsr Z numberofrowsÚnamesÚsrrrÚ test_nextset©s*     ý ztest_adodbapi.test_nextsetcCsdSr rrrrrÚtest_setoutputsizeÂsz test_adodbapi.test_setoutputsizeN)Ú__name__Ú __module__Ú __qualname__ÚdbÚdriverÚconnStrZ connect_argsÚconn_kwsZconnect_kw_argsr rrr"r#r$r)r*rrrrr ]s  r Ú__main__)1ÚprintÚplatformÚsysZunittestr ZsetuptestframeworkZmaketempZ testfolderÚargvZmakeadopackageZpthÚremoveZ find_ado_pathÚpathÚinsertZgetcleanupfunctionZcleanupZadodbapiZadodbapi.is64bitZis64bitr.ÚverboseÚversionÚ __version__ÚboolÚgetwindowsversionZ onWindowsZnoder1rÚinstancer0Z _computernameZ _databasenameZ _usernameZ _passwordZ_driverZ _providerÚPythonr/ZmakemdbZtestmdbZadodbapi.remoteZremoteÚreprr r r+ÚmainrrrrÚs’        þÿ ú    i