%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/lib/python2.7/sqlite3/test/
Upload File :
Create Path :
Current File : //usr/local/lib/python2.7/sqlite3/test/regression.pyc


Oac@sddlZddlZddlZddlZddlmZdejfdYZdfdYZ	dejfdYZ
d	Zd
ZedkrendS(iN(tsupporttRegressionTestscBseZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZRS(cCstjd|_dS(Ns:memory:(tsqlitetconnecttcon(tself((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytsetUpscCs|jjdS(N(Rtclose(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyttearDown"scCs |jj}|jddS(Nspragma user_version(Rtcursortexecute(Rtcur((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckPragmaUserVersion%scCsTtjddtj}z |jj}|jdWd|j|jXdS(Ns:memory:tdetect_typesspragma schema_version(RRtPARSE_COLNAMESRR	R
R(RRR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckPragmaSchemaVersion*s
cCstjddd}gtdD]}|j^q"}|djdxDtdD]6}|djdgtdD]}|f^qxqXWx-tdD]}||jd|d	qW|jdS(
Ns:memory:tcached_statementsiiscreate table test(x)i
sinsert into test(x) values (?)t sselect x from test(RRtxrangeR	R
trangetexecutemanytrollback(RRtxtcursorsti((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckStatementReset4s%4cCsc|jj}|jd|j|jddd|jd|j|jddddS(Ns select 1 as "foo bar [datetime]"isfoo barsselect 1 as "foo baz"sfoo baz(RR	R
tassertEqualtdescription(RR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckColumnNameWithSpacesCs


cCsjtjd}g}xDtdD]6}|j}|j||jdt|q"W|jdS(Ns:memory:iisselect 1 x union select (RRRR	tappendR
tstrR(RRRRR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt#CheckStatementFinalizationOnCloseDbKs
cCstjdkrdStjd}|jd|jdy|jdWntjk
rcnX|jdy|jWn!tjk
r|jdnXdS(	Niis:memory:s3create table foo(x, unique(x) on conflict rollback)sinsert into foo(x) values (1)sinsert into foo(x) values (2)s1pysqlite knew nothing about the implicit ROLLBACK(iii(Rtsqlite_version_infoRR
t
DatabaseErrortcommittOperationalErrortfail(RR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckOnConflictRollbackYs


cCs4|jjd|jjd|jjddS(sm
        pysqlite would crash with older SQLite versions unless
        a workaround is implemented.
        screate table foo(bar)sdrop table fooN(RR
(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt-CheckWorkaroundForBuggySqliteTransferBindingsiscCs|jjddS(s
        pysqlite used to segfault with SQLite versions 3.5.x. These return NULL
        for "no-operation" statements
        tN(RR
(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckEmptyStatementrscCstjd}|jdS(s

        With pysqlite 2.4.0 you needed to use a string or an APSW connection
        object for opening database connections.

        Formerly, both bytestrings and unicode strings used to work.

        Let's make sure unicode strings work in the future.
        u:memory:N(RRR(RR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckUnicodeConnectys	cCsd}tjddtj}|jd|jdtjjf|j||jd|jd|jd|j|d	S(
s
        pysqlite until 2.4.1 did not rebuild the row_cast_map when recompiling
        a statement. This test exhibits the problem.
        sselect * from foos:memory:R
screate table foo(bar timestamp)sinsert into foo(bar) values (?)sdrop table fooscreate table foo(bar integer)sinsert into foo(bar) values (5)N(RRtPARSE_DECLTYPESR
tdatetimetnow(RtSELECTR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckTypeMapUsages




cCs|jttjiddS(s!
        See issue 3312.
        N(tassertRaisest	TypeErrorRtregister_adaptertNone(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckRegisterAdapterscCs,tjd}|jtt|dddS(s!
        See issue 3312.
        s:memory:tisolation_leveluéN(RRR/tUnicodeEncodeErrortsetattr(RR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckSetIsolationLevelscCsdtjfdY}tjd}||}y$|jdj|jdWn'tjk
rnn|jdnX|jtjd|jWdQXdS(sd
        Verifies that cursor methods check whether base class __init__ was
        called.
        tCursorcBseZdZRS(cSsdS(N((RR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt__init__s(t__name__t
__module__R9(((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyR8ss:memory:s
select 4+5s#should have raised ProgrammingErrors$^Base Cursor\.__init__ not called\.$N(	RR8RR
tfetchallR$tProgrammingErrortassertRaisesRegexpR(RR8RR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckCursorConstructorCallChecks
cCspdtjfdY}|d}y|j}|jdWn'tjk
rXn|jdnXdS(sh
        Verifies that connection methods check whether base class __init__ was
        called.
        t
ConnectioncBseZdZRS(cSsdS(N((Rtname((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyR9s(R:R;R9(((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyR@ss:memory:s#should have raised ProgrammingErrorN(RR@R	R$R=(RR@RR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt#CheckConnectionConstructorCallCheckscsdtjffdY}dtjfdY|d}|j}|jd|jddddg|jd|jy|j|jdWn'tj	k
rn|jdnXd
S(s
        Verifies that subclassed cursor classes are correctly registered with
        the connection object, too.  (fetch-across-rollback problem)
        R@cseZfdZRS(cs
|S(N((R(R8(s3/usr/local/lib/python2.7/sqlite3/test/regression.pyR	s(R:R;R	((R8(s3/usr/local/lib/python2.7/sqlite3/test/regression.pyR@sR8cBseZdZRS(cSstjj||dS(N(RR8R9(RR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyR9s(R:R;R9(((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyR8ss:memory:screate table foo(x)sinsert into foo(x) values (?)iiisselect x from foos!should have raised InterfaceErrorN(i(i(i(
RR@R8R	R
RRR<R$tInterfaceError(RR@RR((R8s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckCursorRegistrations



cCstjddd}dS(s
        Verifies that creating a connection in autocommit mode works.
        2.5.3 introduced a regression so that these could no longer
        be created.
        s:memory:R4N(RRR2(RR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckAutoCommitscCsF|jj}|jd|jd|jd|j}dS(s
        Verifies that running a PRAGMA statement that does an autocommit does
        work. This did not work in 2.5.3/2.5.4.
        screate table foo(bar)sinsert into foo(bar) values (5)spragma page_sizeN(RR	R
tfetchone(RRtrow((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckPragmaAutocommits



cCs|jtj|jddS(s}
        Call a connection with a non-string SQL request: check error handling
        of the statement constructor.
        iN(R/RtWarningR(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckConnectionCallscs~tjd}|jjdjdfd}|jtj"jdd|DWdQXdS(s
        http://bugs.python.org/issue10811

        Recursively using a cursor, such as when reusing it from a generator led to segfaults.
        Now we catch recursive cursor usage and raise a ProgrammingError.
        s:memory:screate table a (bar)screate table b (baz)c3sjdddVdS(Nsinsert into a (bar) values (?)i(i(R
((R(s3/usr/local/lib/python2.7/sqlite3/test/regression.pytfoo
ssinsert into b (baz) values (?)css|]}|fVqdS(N((t.0R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pys	<genexpr>sN(RRR	R
R/R=R(RRRK((Rs3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckRecursiveCursorUses

	cCstjddtj}|j}|jd|jd|jd|jdg|jD]}|d^qe}|j|tjdd	d	d
dddtjdd	d	d
ddd
gdS(s
        http://bugs.python.org/issue14720

        The microsecond parsing of convert_timestamp() should pad with zeros,
        since the microsecond string "456" actually represents "456000".
        s:memory:R
sCREATE TABLE t (x TIMESTAMP)s4INSERT INTO t (x) VALUES ('2012-04-04 15:06:00.456')s:INSERT INTO t (x) VALUES ('2012-04-04 15:06:00.123456789')sSELECT * FROM tiiiiii@i@N(RRR*R	R
R<RR+(RRRRtvalues((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt'CheckConvertTimestampMicrosecondPaddings



#	cCs |jttjddddS(Ns:memory:R4i{(R/R0RR(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckInvalidIsolationLevelType/s	cCsqtjd}|jt|d|jt|d|j}|jt|jd|jt|jddS(Ns:memory:s	select 1s	select 1s
 select 2s	select 2(RRR/t
ValueErrorR	R
(RRR((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckNullCharacter5scCstjd}|jd|j|jdd}xt|jdD]\}}|jd|f|j|dkr|j|ddnF|dkr|j|ddn#|dkr|j|ddn|d7}qKW|j|d	d
dS(s
        Connection.commit() did reset cursors, which made sqlite3
        to return rows multiple times when fetched from cursors
        after commit. See issues 10513 and 23129 for details.
        s:memory:s
        create table t(c);
        create table t2(c);
        insert into t values(0);
        insert into t values(1);
        insert into t values(2);
        R'isselect c from tsinsert into t2(c) values (?)iiis'should have returned exactly three rowsN(RRt
executescriptRR4t	enumerateR
R"(RRtcounterRRG((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckCommitCursorReset>s "
cCsZd}tjd}tj|}tj||}|j|~~tjdS(sm
        The interpreter shouldn't crash in case Cursor.__init__() is called
        more than once.
        cWsdS(N((targs((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytcallbackass:memory:N(RRR8tweakreftrefR9Rt
gc_collect(RRXRRRZ((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt
CheckBpo31770\s	
cCs#|jt|j`WdQXdS(N(R/tAttributeErrorRR4(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytCheckDelIsolation_levelSegfaultls(R:R;RRRRRRRR%R&R(R)R.R3R7R?RBRDRERHRJRMRORPRRRVR\R^(((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyRs6				
																								tUnhashableFunccBs&eZdZddZdZRS(cCstddS(Nsunhashable type(R0(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt__hash__rscCsd|_||_dS(Ni(tcallstreturn_value(RRb((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyR9us	cOs|jd7_|jS(Ni(RaRb(RRWtkwargs((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt__call__ysN(R:R;R`R2R9Rd(((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyR_qs	tUnhashableCallbacksTestCasecBsDeZdZdZdZdZdZdZdZRS(s
    https://bugs.python.org/issue34052

    Registering unhashable callbacks raises TypeError, callbacks are not
    registered in SQLite after such registration attempt.
    cCstjd|_dS(Ns:memory:(RRR(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyRscCs|jjdS(N(RR(R((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyRscCs_tdd}|jtd|jj|dWdQX|jjd|j|jdS(NRbisunhashable typeisSELECT 1(R_R>R0Rtset_progress_handlerR
tassertFalseRa(Rtf((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyttest_progress_handlers
cCsd}t}|jtd|jj|d|WdQXd|}|jtj||jjd|WdQX|j|j	dS(Nt	func_namesunhashable typeisno such function: %ssSELECT %s()(
R_R>R0Rtcreate_functionRR#R
RgRa(RRjRhtmsg((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt	test_funcs	
cCs_tdtj}|jtd|jj|WdQX|jjd|j|j	dS(NRbsunhashable typesSELECT 1(
R_RtSQLITE_DENYR>R0Rtset_authorizerR
RgRa(RRh((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyttest_authorizers
cCsdtfdY}d}|jtd'|jj|d|dd	iWdQXd|}|jtj||jjd|WdQXdS(
NtUnhashableTypecBseZdZRS(N(R:R;R2R`(((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyRqst	aggr_namesunhashable typeitAggrsno such function: %ssSELECT %s()((ttypeR>R0Rtcreate_aggregateRR#R
(RRqRrRl((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt	test_aggrs(
(	R:R;t__doc__RRRiRmRpRv(((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyRe~s				
	cCs.tjtd}tj|tjtfS(NtCheck(tunittestt	makeSuiteRt	TestSuiteRe(tregression_suite((s3/usr/local/lib/python2.7/sqlite3/test/regression.pytsuitescCs tj}|jtdS(N(RytTextTestRunnertrunR}(trunner((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyttestst__main__(
R+Rytsqlite3RRYRRtTestCaseRR_ReR}R:(((s3/usr/local/lib/python2.7/sqlite3/test/regression.pyt<module>sT
0		

Zerion Mini Shell 1.0