oQc@sTddlZddlZddlZyddlZWnek rMeZnXdejfdYZdejfdYZ dejfdYZ ej edd ejfd YZ d ejfd YZ d ejfdYZdejfdYZdejfdYZdZdZedkrPendS(iNt ModuleTestscBs}eZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d ZRS( cCs!|jtjddtjdS(Ns2.0sapilevel is %s, should be 2.0(t assertEqualtsqlitetapilevel(tself((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckAPILevel!scCs!|jtjddtjdS(Nisthreadsafety is %d, should be 1(RRt threadsafety(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckThreadSafety%scCs!|jtjddtjdS(Ntqmarks%paramstyle is '%s', should be 'qmark'(RRt paramstyle(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckParamStyle)scCs |jttjtddS(Ns*Warning is not a subclass of StandardError(t assertTruet issubclassRtWarningt StandardError(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckWarning.scCs |jttjtddS(Ns(Error is not a subclass of StandardError(R R RtErrorR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckError2scCs#|jttjtjddS(Ns)InterfaceError is not a subclass of Error(R R RtInterfaceErrorR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckInterfaceError6scCs#|jttjtjddS(Ns(DatabaseError is not a subclass of Error(R R Rt DatabaseErrorR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckDatabaseError:scCs#|jttjtjddS(Ns,DataError is not a subclass of DatabaseError(R R Rt DataErrorR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckDataError>scCs#|jttjtjddS(Ns3OperationalError is not a subclass of DatabaseError(R R RtOperationalErrorR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckOperationalErrorBscCs#|jttjtjddS(Ns1IntegrityError is not a subclass of DatabaseError(R R RtIntegrityErrorR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckIntegrityErrorFscCs#|jttjtjddS(Ns0InternalError is not a subclass of DatabaseError(R R Rt InternalErrorR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckInternalErrorJscCs#|jttjtjddS(Ns3ProgrammingError is not a subclass of DatabaseError(R R RtProgrammingErrorR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckProgrammingErrorNscCs#|jttjtjddS(Ns4NotSupportedError is not a subclass of DatabaseError(R R RtNotSupportedErrorR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckNotSupportedErrorRs (t__name__t __module__RRR RRRRRRRRRR!(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR s            tConnectionTestscBsbeZdZdZdZdZdZdZdZdZ dZ d Z RS( cCsBtjd|_|jj}|jd|jdddS(Ns:memory:s4create table test(id integer primary key, name text)s!insert into test(name) values (?)tfoo(sfoo(Rtconnecttcxtcursortexecute(Rtcu((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytsetUpXs cCs|jjdS(N(R'tclose(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyttearDown^scCs|jjdS(N(R'tcommit(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckCommitascCs|jj|jjdS(sV A commit should also work when no changes were made to the database. N(R'R.(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckCommitAfterNoChangesds cCs|jjdS(N(R'trollback(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckRollbackkscCs|jj|jjdS(sX A rollback should also work when no changes were made to the database. N(R'R1(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckRollbackAfterNoChangesns cCs|jj}dS(N(R'R((RR*((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckCursoruscCsBd}ytj|}Wntjk r0dSX|jddS(Ns/foo/bar/bla/23534/mydb.dbs&should have raised an OperationalError(RR&Rtfail(RtYOU_CANNOT_OPEN_THIStcon((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckFailedOpenxs cCs|jjdS(N(R'R,(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckClosescCs|j|jjtj|j|jjtj|j|jjtj|j|jjtj|j|jjtj|j|jjtj|j|jj tj |j|jj tj |j|jj tj |j|jj tj dS(N( RR'R RRRRRRRRRR (R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExceptionss( R"R#R+R-R/R0R2R3R4R8R9R:(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR$Ws         t CursorTestscBseZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZ dZ!d Z"d!Z#d"Z$d#Z%d$Z&d%Z'd&Z(d'Z)d(Z*d)Z+d*Z,d+Z-d,Z.d-Z/RS(.cCsKtjd|_|jj|_|jjd|jjdddS(Ns:memory:sCcreate table test(id integer primary key, name text, income number)s!insert into test(name) values (?)R%(sfoo(RR&R'R(R*R)(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR+scCs|jj|jjdS(N(R*R,R'(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR-s cCs|jjddS(Nsdelete from test(R*R)(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteNoArgsscCsPy!|jjd|jdWn(tjk r8dS|jdnXdS(Ns select asdfs&should have raised an OperationalErrorsraised wrong exception(R*R)R5RR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteIllegalSqlscCsPy!|jjd|jdWn(tjk r8dS|jdnXdS(Nsselect 5+4; select 4+5sshould have raised a Warningsraised wrong exception(R*R)R5RR (R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteTooMuchSqlscCs|jjddS(Nsselect 5+4; -- foo bar(R*R)(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteTooMuchSql2scCs|jjddS(NsT select 5+4; /* foo */ (R*R)(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteTooMuchSql3s cCsMy!|jjd|jdWn%tk r5dS|jdnXdS(Ni*sshould have raised a ValueErrorsraised wrong exception.(R*R)R5t ValueError(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteWrongSqlArgs cCs|jjdddS(Nsinsert into test(id) values (?)i*(i*(R*R)(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteArgIntscCs|jjdddS(Ns#insert into test(income) values (?)gp= ף@(gp= ף@(R*R)(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteArgFloatscCs|jjdddS(Ns!insert into test(name) values (?)tHugo(RE(R*R)(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteArgStringscCsV|jjdd|jjd|jjf|jj}|j|dddS(Ns!insert into test(name) values (?)tHugos select name from test where id=?i(RG(R*R)t lastrowidtfetchoneR(Rtrow((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt!CheckExecuteArgStringWithZeroBytescCs?y$|jjdd|jdWntjk r:nXdS(Nsinsert into test(id) values (?)itEgons#should have raised ProgrammingError(iRL(R*R)R5RR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteWrongNoOfArgs1s cCs<y!|jjd|jdWntjk r7nXdS(Nsinsert into test(id) values (?)s#should have raised ProgrammingError(R*R)R5RR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteWrongNoOfArgs2s cCs<y!|jjd|jdWntjk r7nXdS(Nsinsert into test(id) values (?)s#should have raised ProgrammingError(R*R)R5RR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteWrongNoOfArgs3s cCsM|jjd|jjddg|jj}|j|dddS(Ns%insert into test(name) values ('foo')s"select name from test where name=?R%i(R*R)RIR(RRJ((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteParamListscCscdtfdY}|jjd|jjd||jj}|j|dddS(NtLcBseZdZdZRS(cSsdS(Ni((R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt__len__scSsdS(NR%((Rtx((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt __getitem__s(R"R#RRRT(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRQs s%insert into test(name) values ('foo')s"select name from test where name=?iR%(tobjectR*R)RIR(RRQRJ((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteParamSequences cCsQ|jjd|jjdidd6|jj}|j|dddS(Ns%insert into test(name) values ('foo')s&select name from test where name=:nameR%tnamei(R*R)RIR(RRJ((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteDictMappingscCsvtjd krdSdtfdY}|jjd|jjd||jj}|j|dddS( NiiitDcBseZdZRS(cSsdS(NR%((Rtkey((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt __missing__ s(R"R#R[(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRY ss%insert into test(name) values ('foo')s&select name from test where name=:nameR%(iii(tsyst version_infotdictR*R)RIR(RRYRJ((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteDictMapping_MappingscCsV|jjdy+|jjdidd6|jdWntjk rQnXdS(Ns%insert into test(name) values ('foo')s1select name from test where name=:name and id=:idR%RWs#should have raised ProgrammingError(R*R)R5RR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt$CheckExecuteDictMappingTooLittleArgss cCsL|jjdy!|jjd|jdWntjk rGnXdS(Ns%insert into test(name) values ('foo')s&select name from test where name=:names#should have raised ProgrammingError(R*R)R5RR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteDictMappingNoArgss cCsV|jjdy+|jjdidd6|jdWntjk rQnXdS(Ns%insert into test(name) values ('foo')s"select name from test where name=?R%RWs#should have raised ProgrammingError(R*R)R5RR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteDictMappingUnnamed$s cCs|jjdS(N(R*R,(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR9,scCsZ|jjd|jjd|jjd|jjd|j|jjddS(Nsdelete from tests%insert into test(name) values ('foo')supdate test set name='bar'i(R*R)Rtrowcount(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckRowcountExecute/s cCs*|jjd|j|jjddS(s pysqlite does not know the rowcount of SELECT statements, because we don't fetch all rows after executing the select statement. The rowcount has thus to be -1. sselect 5 union select 6iN(R*R)RRc(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckRowcountSelect6scCsF|jjd|jjddddg|j|jjddS( Nsdelete from tests!insert into test(name) values (?)iii(i(i(i(R*R)t executemanyRRc(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckRowcountExecutemany?scCsF|jjd|jjd|jjdkrB|jdndS(Ns%insert into test(name) values ('foo')is"total changes reported wrong value(R*R)R't total_changesR5(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckTotalChangesDscCs6|jjdgtddD]}|f^qdS(Ns#insert into test(income) values (?)idin(R*Rftrange(RRS((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteManySequenceNscCs-dddY}|jjd|dS(NtMyItercBseZdZdZRS(cSs d|_dS(Ni(tvalue(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt__init__SscSs5|jdkrtn|jd7_|jfSdS(Ni i(Rmt StopIteration(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytnextVs (R"R#RnRp(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRlRs s#insert into test(income) values (?)((R*Rf(RRl((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteManyIteratorQs cCs#d}|jjd|dS(Ncss#xtdD]}|fVq WdS(Ni(Rj(ti((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytmygen`ss#insert into test(income) values (?)(R*Rf(RRs((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteManyGenerator_s cCsSy'|jjddg|jdWn%tk r;dS|jdnXdS(Ni*isshould have raised a ValueErrorsraised wrong exception.(i(R*RfR5RA(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteManyWrongSqlArgfs cCsVy'|jjddg|jdWn(tjk r>dS|jdnXdS(Nsselect ?is%should have raised a ProgrammingErrorsraised wrong exception.(i(R*RfR5RR(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteManySelectoscCshy$|jjdd|jdWn=tk r8dStk rc}dG|jGH|jdnXdS(Ns#insert into test(income) values (?)i*sshould have raised a TypeErrortraisedsraised wrong exception.(R*RfR5t TypeErrort Exceptiont __class__(Rte((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckExecuteManyNotIterablexs  cCs|jjd|jjdd|jjdd |jjdg}x"|jD]}|j|dqVW|j|dd|j|dddS( Nsdelete from testsinsert into test(id) values (?)iisselect id from test order by idii(i(i(R*R)tappendR(RtlstRJ((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckFetchIterscCsV|jjd|jj}|j|dd|jj}|j|ddS(Nsselect name from testiR%(R*R)RIRtNone(RRJ((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckFetchones cCs/|jj}|j}|j|ddS(N(R'R(RIRR(RtcurRJ((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckFetchoneNoStatements cCs|j|jjdd|j_|jjd|jjd|jjd|jjd|jjd|jj}|jt|ddS(Niisdelete from tests#insert into test(name) values ('A')s#insert into test(name) values ('B')s#insert into test(name) values ('C')sselect name from test(RR*t arraysizeR)t fetchmanytlen(Rtres((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckArraySizes cCs^|jjd|jjd}|jt|d|jjd}|j|gdS(Nsselect name from testidi(R*R)RRR(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckFetchmanys cCs?|jjd|jjdd}|jt|ddS(s0Checks if fetchmany works with keyword argumentssselect name from testtsizeidiN(R*R)RRR(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckFetchmanyKwArgscCsX|jjd|jj}|jt|d|jj}|j|gdS(Nsselect name from testi(R*R)tfetchallRR(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckFetchalls cCs|jjdddgdS(Niii(R*t setinputsizes(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckSetinputsizesscCs|jjdddS(Nii(R*t setoutputsize(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckSetoutputsizescCs|jjddS(Ni*(R*R(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckSetoutputsizeNoColumnscCs|j|jj|jdS(N(RR*t connectionR'(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckCursorConnectionscCsRy,d}|jj|}|jdWntk r@dSX|jddS(NcSsdS(N((((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytfssshould have raised a TypeErrorsshould have raised a ValueError(R'R(R5Rx(RRR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckWrongCursorCallables  cCsTdddY}|}y tj|}|jdWntk rOnXdS(NtFoocBseZRS((R"R#(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRssshould have raised a ValueError((RtCursorR5Rx(RRR%R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckCursorWrongClasss  (0R"R#R+R-R<R=R>R?R@RBRCRDRFRKRMRNRORPRVRXR_R`RaRbR9RdReRgRiRkRqRtRuRvR|RRRRRRRRRRRRR(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR;s\                                  sThis test requires threading.t ThreadTestscBsbeZdZdZdZdZdZdZdZdZ dZ d Z RS( cCs8tjd|_|jj|_|jjddS(Ns:memory:s\create table test(id integer primary key, name text, bin binary, ratio number, ts timestamp)(RR&R7R(RR)(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR+scCs|jj|jjdS(N(RR,R7(R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR-s cCs{d}g}tjd|di|jd6|d6}|j|jt|dkrw|jdj|ndS(NcSsPy!|j}|jddSWn(tjk r8dS|jdnXdS(Nsdid not raise ProgrammingErrorsraised wrong exception(R(R}RR(R7terrorsR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytruns  ttargettkwargsR7Ris (t threadingtThreadR7tstarttjoinRR5(RRRtt((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckConCursors )  cCs{d}g}tjd|di|jd6|d6}|j|jt|dkrw|jdj|ndS(NcSsNy|j|jddSWn(tjk r6dS|jdnXdS(Nsdid not raise ProgrammingErrorsraised wrong exception(R.R}RR(R7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRs  RRR7Ris (RRR7RRRR5(RRRR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckConCommits )  cCs{d}g}tjd|di|jd6|d6}|j|jt|dkrw|jdj|ndS(NcSsNy|j|jddSWn(tjk r6dS|jdnXdS(Nsdid not raise ProgrammingErrorsraised wrong exception(R1R}RR(R7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRs  RRR7Ris (RRR7RRRR5(RRRR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckConRollback s )  cCs{d}g}tjd|di|jd6|d6}|j|jt|dkrw|jdj|ndS(NcSsNy|j|jddSWn(tjk r6dS|jdnXdS(Nsdid not raise ProgrammingErrorsraised wrong exception(R,R}RR(R7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR s  RRR7Ris (RRR7RRRR5(RRRR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckConCloses )  cCs{d}g}tjd|di|jd6|d6}|j|jt|dkrw|jdj|ndS(NcSsQy"|jd|jddSWn(tjk r9dS|jdnXdS(Ns#insert into test(name) values ('a')sdid not raise ProgrammingErrorsraised wrong exception(R)R}RR(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR2s  RRRRis (RRRRRRR5(RRRR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckCurImplicitBegin1s )  cCs{d}g}tjd|di|jd6|d6}|j|jt|dkrw|jdj|ndS(NcSsNy|j|jddSWn(tjk r6dS|jdnXdS(Nsdid not raise ProgrammingErrorsraised wrong exception(R,R}RR(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRDs  RRRRis (RRRRRRR5(RRRR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckCurCloseCs )  cCsd}g}|jjdtjd|di|jd6|d6}|j|jt|dkr|jdj|ndS( NcSsQy"|jd|jddSWn(tjk r9dS|jdnXdS(Nsselect name from testsdid not raise ProgrammingErrorsraised wrong exception(R)R}RR(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRVs  s#insert into test(name) values ('a')RRRRis (RR)RRRRRR5(RRRR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckCurExecuteUs )  cCsd}g}|jjd|jjdtjd|di|jd6|d6}|j|jt|dkr|jd j|ndS( NcSsPy!|j}|jddSWn(tjk r8dS|jdnXdS(Nsdid not raise ProgrammingErrorsraised wrong exception(RIR}RR(RRRJ((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRis  s#insert into test(name) values ('a')sselect name from testRRRRis (RR)RRRRRR5(RRRR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckCurIterNexths )  ( R"R#R+R-RRRRRRRR(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRs         tConstructorTestscBsGeZdZdZdZdZdZdZdZRS(cCstjddd}dS(Nii i(RtDate(Rtd((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckDate}scCstjddd}dS(Ni i'i#(RtTime(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckTimescCs"tjdddddd}dS(Nii ii i'i#(Rt Timestamp(Rtts((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckTimestampscCstjd}dS(Ni*(Rt DateFromTicks(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckDateFromTicksscCstjd}dS(Ni*(Rt TimeFromTicks(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckTimeFromTicksscCstjd}dS(Ni*(RtTimestampFromTicks(RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckTimestampFromTicksscCstjtdd}dS(Nit'(RtBinarytchr(Rtb((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckBinarys( R"R#RRRRRRR(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR|s      tExtensionTestscBsGeZdZdZdZdZdZdZdZRS(cCsYtjd}|j}|jd|jd|jd}|j|ddS(Ns:memory:s -- bla bla /* a stupid comment */ create table a(i); insert into a(i) values (5); sselect i from aii(RR&R(t executescriptR)RIR(RR7RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckScriptStringSqls  cCsYtjd}|j}|jd|jd|jd}|j|ddS(Ns:memory:u create table a(i); insert into a(i) values (5); select i from a; delete from a; insert into a(i) values (6); sselect i from aii(RR&R(RR)RIR(RR7RR((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckScriptStringUnicodes  cCsftjd}|j}t}y|jdWntjk rNt}nX|j|tddS(Ns:memory:s1create table test(x); asdf; create table test2(x)sshould have raised an exception(RR&R(tFalseRRtTrueR(RR7RRw((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckScriptSyntaxErrors  cCsftjd}|j}t}y|jdWntjk rNt}nX|j|tddS(Ns:memory:s5create table test(sadfsadfdsa); select foo from hurz;sshould have raised an exception(RR&R(RRRRR(RR7RRw((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckScriptErrorNormals  cCs?tjd}|jdjd}|j|dddS(Ns:memory:sselect 5iis Basic test of Connection.execute(RR&R)RIR(RR7tresult((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckConnectionExecutescCstjd}|jd|jdd d g|jdj}|j|dddd|j|d ddddS( Ns:memory:screate table test(foo)s insert into test(foo) values (?)iis!select foo from test order by foois$Basic test of Connection.executemanyi(i(i(RR&R)RfRR(RR7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckConnectionExecutemanys  cCsLtjd}|jd|jdjd}|j|dddS(Ns:memory:s9create table test(foo); insert into test(foo) values (5);sselect foo from testiis&Basic test of Connection.executescript(RR&RR)RIR(RR7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckConnectionExecutescripts ( R"R#RRRRRRR(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRs   tClosedConTestscBskeZdZdZdZdZdZdZdZdZ dZ d Z d Z RS( cCsdS(N((R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR+scCsdS(N((R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR-scCsdtjd}|jy|j}|jdWn'tjk rLn|jdnXdS(Ns:memory:s%Should have raised a ProgrammingError(RR&R,R(R5R(RR7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckClosedConCursors  cCsbtjd}|jy|j|jdWn'tjk rJn|jdnXdS(Ns:memory:s%Should have raised a ProgrammingError(RR&R,R.R5R(RR7((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckClosedConCommits  cCsbtjd}|jy|j|jdWn'tjk rJn|jdnXdS(Ns:memory:s%Should have raised a ProgrammingError(RR&R,R1R5R(RR7((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckClosedConRollbacks  cCsqtjd}|j}|jy|jd|jdWn'tjk rYn|jdnXdS(Ns:memory:sselect 4s%Should have raised a ProgrammingError(RR&R(R,R)R5R(RR7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckClosedCurExecutes   cCsttjd}|jd}y$|jdd||jdWn'tjk r\n|jdnXdS(Ns:memory:cSsdS(Ni((RS((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR sR%is%Should have raised a ProgrammingError(RR&R,tcreate_functionR5R(RR7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckClosedCreateFunction s  cCs~tjd}|jdddY}y$|jdd||jdWn'tjk rfn|jdnXdS(Ns:memory:tAggcBs#eZdZdZdZRS(cSsdS(N((R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRnscSsdS(N((RRS((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytstepscSsdS(Ni((R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytfinalizes(R"R#RnRR(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRs  R%is%Should have raised a ProgrammingError((RR&R,tcreate_aggregateR5R(RR7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckClosedCreateAggregates cCsntjd}|jd}y|j||jdWn'tjk rVn|jdnXdS(Ns:memory:cWstjS(N(RtDENY(targs((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt authorizer*ss%Should have raised a ProgrammingError(RR&R,tset_authorizerR5R(RR7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckClosedSetAuthorizer's   cCsqtjd}|jd}y!|j|d|jdWn'tjk rYn|jdnXdS(Ns:memory:cSsdS(N((((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytprogress7sids%Should have raised a ProgrammingError(RR&R,tset_progress_handlerR5R(RR7R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckClosedSetProgressCallback4s  cCs_tjd}|jy||jdWn'tjk rGn|jdnXdS(Ns:memory:s%Should have raised a ProgrammingError(RR&R,R5R(RR7((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytCheckClosedCall@s ( R"R#R+R-RRRRRRRRR(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRs    tClosedCurTestscBs#eZdZdZdZRS(cCsdS(N((R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR+LscCsdS(N((R((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyR-OscCstjd}|j}|jxdD]}|dkrGd}n'|dkrhd ddgf}ng}y.t||}|||jd |Wq,tjk rq,|jd |q,Xq,WdS(Ns:memory:R)RfRRRRIsselect 4 union select 5sinsert into foo(bar) values (?)iis.Should have raised a ProgrammingError: method s'Should have raised a ProgrammingError: (sexecutes executemanys executescriptsfetchalls fetchmanysfetchone(sexecutes executescript(sselect 4 union select 5(i(i(RR&R(R,tgetattrR5R(RR7Rt method_nametparamstmethod((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyt CheckClosedRs"       (R"R#R+R-R(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyRKs  c Cstjtd}tjtd}tjtd}tjtd}tjtd}tjtd}tjtd}tjt d}tj ||||||||fS(NtCheck( tunittestt makeSuiteRR$R;RRRRRt TestSuite(t module_suitetconnection_suitet cursor_suitet thread_suitetconstructor_suitet ext_suitetclosed_con_suitetclosed_cur_suite((s(/sys/lib/python2.7/sqlite3/test/dbapi.pytsuiteiscCs tj}|jtdS(N(RtTextTestRunnerRR(trunner((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyttestts t__main__(RR\tsqlite3RRt ImportErrorRtTestCaseRR$R;t skipUnlessRRRRRRRR"(((s(/sys/lib/python2.7/sqlite3/test/dbapi.pyts(     79OCv