| Index: third_party/sqlite/sqlite-src-3100200/test/triggerC.test
|
| diff --git a/third_party/sqlite/src/test/triggerC.test b/third_party/sqlite/sqlite-src-3100200/test/triggerC.test
|
| similarity index 95%
|
| copy from third_party/sqlite/src/test/triggerC.test
|
| copy to third_party/sqlite/sqlite-src-3100200/test/triggerC.test
|
| index 14cc0f01dd7e61f81163e2ff4accf7190bb053d0..3e47521fd11c71ddbf63b7507addedea33082da8 100644
|
| --- a/third_party/sqlite/src/test/triggerC.test
|
| +++ b/third_party/sqlite/sqlite-src-3100200/test/triggerC.test
|
| @@ -12,6 +12,7 @@
|
|
|
| set testdir [file dirname $argv0]
|
| source $testdir/tester.tcl
|
| +set testprefix triggerC
|
| ifcapable {!trigger} {
|
| finish_test
|
| return
|
| @@ -993,4 +994,52 @@ reset_db
|
| optimization_control db factor-constants 0
|
| do_execsql_test triggerC-14.2 $SQL {1 2 3}
|
|
|
| +#-------------------------------------------------------------------------
|
| +# Check that table names used by trigger programs are dequoted exactly
|
| +# once.
|
| +#
|
| +do_execsql_test 15.1.1 {
|
| + PRAGMA recursive_triggers = 1;
|
| + CREATE TABLE node(
|
| + id int not null primary key,
|
| + pid int not null default 0 references node,
|
| + key varchar not null,
|
| + path varchar default '',
|
| + unique(pid, key)
|
| + );
|
| + CREATE TRIGGER node_delete_referencing AFTER DELETE ON "node"
|
| + BEGIN
|
| + DELETE FROM "node" WHERE pid = old."id";
|
| + END;
|
| +}
|
| +do_execsql_test 15.1.2 {
|
| + INSERT INTO node(id, pid, key) VALUES(9, 0, 'test');
|
| + INSERT INTO node(id, pid, key) VALUES(90, 9, 'test1');
|
| + INSERT INTO node(id, pid, key) VALUES(900, 90, 'test2');
|
| + DELETE FROM node WHERE id=9;
|
| + SELECT * FROM node;
|
| +}
|
| +
|
| +do_execsql_test 15.2.1 {
|
| + CREATE TABLE x1 (x);
|
| +
|
| + CREATE TABLE x2 (a, b);
|
| + CREATE TABLE '"x2"'(a, b);
|
| +
|
| + INSERT INTO x2 VALUES(1, 2);
|
| + INSERT INTO x2 VALUES(3, 4);
|
| + INSERT INTO '"x2"' SELECT * FROM x2;
|
| +
|
| + CREATE TRIGGER x1ai AFTER INSERT ON x1 BEGIN
|
| + INSERT INTO """x2""" VALUES('x', 'y');
|
| + DELETE FROM """x2""" WHERE a=1;
|
| + UPDATE """x2""" SET b = 11 WHERE a = 3;
|
| + END;
|
| +
|
| + INSERT INTO x1 VALUES('go!');
|
| +}
|
| +
|
| +do_execsql_test 15.2.2 { SELECT * FROM x2; } {1 2 3 4}
|
| +do_execsql_test 15.2.3 { SELECT * FROM """x2"""; } {3 11 x y}
|
| +
|
| finish_test
|
|
|