diff options
Diffstat (limited to 'test/tkt3879.test')
| -rw-r--r-- | test/tkt3879.test | 52 | 
1 files changed, 52 insertions, 0 deletions
| diff --git a/test/tkt3879.test b/test/tkt3879.test new file mode 100644 index 0000000..ed5577f --- /dev/null +++ b/test/tkt3879.test @@ -0,0 +1,52 @@ +# 2009 May 25 +# +# The author disclaims copyright to this source code.  In place of +# a legal notice, here is a blessing: +# +#    May you do good and not evil. +#    May you find forgiveness for yourself and forgive others. +#    May you share freely, never taking more than you give. +# +#*********************************************************************** +# +# Tests to verify ticket #3879 is fixed. +# +# $Id: tkt3879.test,v 1.2 2009/06/05 17:09:12 drh Exp $ + +set testdir [file dirname $argv0] +source $testdir/tester.tcl + +do_test tkt3879.1.1 { +  execsql { +    CREATE TABLE t1 (a PRIMARY KEY, b); +    INSERT INTO t1 VALUES ('w',  1); +    INSERT INTO t1 VALUES ('z', -1); +   +    CREATE TABLE t2 (m INTEGER PRIMARY KEY, n, a, p); +    INSERT INTO t2 VALUES (25, 13, 'w', 1); +    INSERT INTO t2 VALUES (26, 25, 'z', 153); +    INSERT INTO t2 VALUES (27, 25, 'z', 68); + +    CREATE TABLE t3 (m); +    INSERT INTO t3 VALUES (25); +  } +} {} + +do_test tkt3879.1.2 { +  execsql { +    SELECT 111, t1.b*123 +    FROM t3, t2 AS j0, t2 AS j1, t1 +    WHERE j0.m=t3.m AND t1.a=j0.a AND j1.n=j0.m; +  } +} {111 123 111 123} + +do_test tkt3879.1.3 { +  execsql { +    SELECT 222, t1.b*123 +    FROM t3, t2 AS j0, t2 AS j1, t1 +    WHERE j0.m=t3.m AND t1.a=j0.a AND j1.n=j0.m +    ORDER BY t1.b; +  } +} {222 123 222 123} + +finish_test | 
