U .c @sDddlZddlZGdddejZddZddZedkr@edS) Nc@s,eZdZddZddZddZddZd S) DumpTestscCstd|_|j|_dS)Nz:memory:)sqliteZconnectcxcursorcuselfr 6/opt/alt/python38/lib64/python3.8/sqlite3/test/dump.pysetUps zDumpTests.setUpcCs|jdSN)rcloserr r r tearDown szDumpTests.tearDownc stddddddddd d g fd d Dj}d d |Ddgdgfdd ttDdS)Nz#CREATE TABLE "index"("index" blob);z"INSERT INTO "index" VALUES(X'01');z3CREATE TABLE "quoted""table"("quoted""field" text);z4INSERT INTO "quoted""table" VALUES('quoted''value');zCREATE TABLE t1(id integer primary key, s1 text, t1_i1 integer not null, i2 integer, unique (s1), constraint t1_idx1 unique (i2));z'INSERT INTO "t1" VALUES(1,'foo',10,20);z(INSERT INTO "t1" VALUES(2,'foo2',30,30);ztCREATE TABLE t2(id integer, t2_i1 integer, t2_i2 integer, primary key (id),foreign key(t2_i1) references t1(t1_i1));zrCREATE TRIGGER trigger_1 update of t1_i1 on t1 begin update t2 set t2_i1 = new.t1_i1 where t2_i1 = old.t1_i1; end;z;CREATE VIEW v1 as select * from t1 left join t2 using (id);csg|]}j|qSr )rexecute.0srr r ,sz,DumpTests.CheckTableDump..cSsg|]}|qSr r rr r r r.sBEGIN TRANSACTION;COMMIT;cs g|]}||qSr ) assertEqual)riZ actual_sqlsZ expected_sqlsrr r r1s)riterdumprangelen)rrr rr CheckTableDumps(  zDumpTests.CheckTableDumpcCs`Gddd}||j_d}d}d||dg}|j||j|t|j}|||dS)Nc@seZdZddZddZdS)z5DumpTests.CheckUnorderableRow..UnorderableRowcSs ||_dSr row)rrrr r r __init__7sz>DumpTests.CheckUnorderableRow..UnorderableRow.__init__cSs |j|Sr r)rindexr r r __getitem__9szADumpTests.CheckUnorderableRow..UnorderableRow.__getitem__N)__name__ __module__ __qualname__rr!r r r r UnorderableRow6sr%zCREATE TABLE "alpha" ("one");zCREATE TABLE "beta" ("two");rr)rZ row_factoryrrlistrr)rr%Z CREATE_ALPHAZ CREATE_BETAZexpectedZgotr r r CheckUnorderableRow4s  zDumpTests.CheckUnorderableRowN)r"r#r$r rrr'r r r r rs&rcCstttdS)NZCheck)unittestZ TestSuiteZ makeSuiterr r r r suiteIsr)cCst}|tdSr )r(ZTextTestRunnerrunr))Zrunnerr r r testLsr+__main__)r(Zsqlite3rZTestCaserr)r+r"r r r r s C