| Index: third_party/sqlite/src/test/join.test
|
| diff --git a/third_party/sqlite/src/test/join.test b/third_party/sqlite/src/test/join.test
|
| index 7fecbe876e5f574992578767a7779931cf8f9784..88ac04f950a0ab88ed40e4f5ec5c816126c62e95 100644
|
| --- a/third_party/sqlite/src/test/join.test
|
| +++ b/third_party/sqlite/src/test/join.test
|
| @@ -576,4 +576,69 @@ ifcapable subquery {
|
|
|
| } ;# ifcapable subquery
|
|
|
| +#-------------------------------------------------------------------------
|
| +# The following tests are to ensure that bug b73fb0bd64 is fixed.
|
| +#
|
| +do_test join-11.1 {
|
| + drop_all_tables
|
| + execsql {
|
| + CREATE TABLE t1(a INTEGER PRIMARY KEY, b TEXT);
|
| + CREATE TABLE t2(a INTEGER PRIMARY KEY, b TEXT);
|
| + INSERT INTO t1 VALUES(1,'abc');
|
| + INSERT INTO t1 VALUES(2,'def');
|
| + INSERT INTO t2 VALUES(1,'abc');
|
| + INSERT INTO t2 VALUES(2,'def');
|
| + SELECT * FROM t1 NATURAL JOIN t2;
|
| + }
|
| +} {1 abc 2 def}
|
| +
|
| +do_test join-11.2 {
|
| + execsql { SELECT a FROM t1 JOIN t1 USING (a)}
|
| +} {1 2}
|
| +do_test join-11.3 {
|
| + execsql { SELECT a FROM t1 JOIN t1 AS t2 USING (a)}
|
| +} {1 2}
|
| +do_test join-11.3 {
|
| + execsql { SELECT * FROM t1 NATURAL JOIN t1 AS t2}
|
| +} {1 abc 2 def}
|
| +do_test join-11.4 {
|
| + execsql { SELECT * FROM t1 NATURAL JOIN t1 }
|
| +} {1 abc 2 def}
|
| +
|
| +do_test join-11.5 {
|
| + drop_all_tables
|
| + execsql {
|
| + CREATE TABLE t1(a COLLATE nocase, b);
|
| + CREATE TABLE t2(a, b);
|
| + INSERT INTO t1 VALUES('ONE', 1);
|
| + INSERT INTO t1 VALUES('two', 2);
|
| + INSERT INTO t2 VALUES('one', 1);
|
| + INSERT INTO t2 VALUES('two', 2);
|
| + }
|
| +} {}
|
| +do_test join-11.6 {
|
| + execsql { SELECT * FROM t1 NATURAL JOIN t2 }
|
| +} {ONE 1 two 2}
|
| +do_test join-11.7 {
|
| + execsql { SELECT * FROM t2 NATURAL JOIN t1 }
|
| +} {two 2}
|
| +
|
| +do_test join-11.8 {
|
| + drop_all_tables
|
| + execsql {
|
| + CREATE TABLE t1(a, b TEXT);
|
| + CREATE TABLE t2(b INTEGER, a);
|
| + INSERT INTO t1 VALUES('one', '1.0');
|
| + INSERT INTO t1 VALUES('two', '2');
|
| + INSERT INTO t2 VALUES(1, 'one');
|
| + INSERT INTO t2 VALUES(2, 'two');
|
| + }
|
| +} {}
|
| +do_test join-11.9 {
|
| + execsql { SELECT * FROM t1 NATURAL JOIN t2 }
|
| +} {one 1.0 two 2}
|
| +do_test join-11.10 {
|
| + execsql { SELECT * FROM t2 NATURAL JOIN t1 }
|
| +} {1 one 2 two}
|
| +
|
| finish_test
|
|
|