Annotation of embedaddon/sqlite3/test/tkt3334.test, revision 1.1.1.1

1.1       misho       1: # 2008 August 26
                      2: #
                      3: # The author disclaims copyright to this source code.  In place of
                      4: # a legal notice, here is a blessing:
                      5: #
                      6: #    May you do good and not evil.
                      7: #    May you find forgiveness for yourself and forgive others.
                      8: #    May you share freely, never taking more than you give.
                      9: #
                     10: #***********************************************************************
                     11: #
                     12: # This file implements regression tests for SQLite library. 
                     13: # Specifically, it tests that bug #3334 has been fixed by the
                     14: # addition of restriction (19) to the subquery flattener optimization.
                     15: #
                     16: # $Id: tkt3334.test,v 1.1 2008/08/26 12:56:14 drh Exp $
                     17: 
                     18: 
                     19: set testdir [file dirname $argv0]
                     20: source $testdir/tester.tcl
                     21: 
                     22: do_test tkt3334-1.0 {
                     23:   execsql {
                     24:     CREATE TABLE t1(a,b);
                     25:     INSERT INTO t1 VALUES(1,934);
                     26:     INSERT INTO t1 VALUES(2,221);
                     27:     INSERT INTO t1 VALUES(1,372);
                     28:     INSERT INTO t1 VALUES(3,552);
                     29:     INSERT INTO t1 VALUES(1,719);
                     30:     INSERT INTO t1 VALUES(4,102);
                     31:     SELECT * FROM t1 ORDER BY b;
                     32:   }
                     33: } {4 102 2 221 1 372 3 552 1 719 1 934}
                     34: 
                     35: do_test tkt3334-1.1 {
                     36:   execsql {
                     37:     SELECT a FROM (SELECT a FROM t1 ORDER BY b LIMIT 2) WHERE a=1;
                     38:   }
                     39: } {}
                     40: do_test tkt3334-1.2 {
                     41:   execsql {
                     42:     SELECT count(*) FROM (SELECT a FROM t1 ORDER BY b LIMIT 2) WHERE a=1;
                     43:   }
                     44: } {0}
                     45: do_test tkt3334-1.3 {
                     46:   execsql {
                     47:     SELECT a FROM (SELECT a FROM t1 ORDER BY b LIMIT 3) WHERE a=1;
                     48:   }
                     49: } {1}
                     50: do_test tkt3334-1.4 {
                     51:   execsql {
                     52:     SELECT count(*) FROM (SELECT a FROM t1 ORDER BY b LIMIT 3) WHERE a=1;
                     53:   }
                     54: } {1}
                     55: do_test tkt3334-1.5 {
                     56:   execsql {
                     57:     SELECT a FROM (SELECT a FROM t1 ORDER BY b LIMIT 99) WHERE a=1;
                     58:   }
                     59: } {1 1 1}
                     60: do_test tkt3334-1.6 {
                     61:   execsql {
                     62:     SELECT count(*) FROM (SELECT a FROM t1 ORDER BY b LIMIT 99) WHERE a=1;
                     63:   }
                     64: } {3}
                     65: do_test tkt3334-1.7 {
                     66:   execsql {
                     67:     SELECT a FROM (SELECT a FROM t1 ORDER BY b) WHERE a=1;
                     68:   }
                     69: } {1 1 1}
                     70: do_test tkt3334-1.8 {
                     71:   execsql {
                     72:     SELECT count(*) FROM (SELECT a FROM t1 ORDER BY b) WHERE a=1;
                     73:   }
                     74: } {3}
                     75: do_test tkt3334-1.9 {
                     76:   execsql {
                     77:     SELECT a FROM (SELECT a FROM t1) WHERE a=1;
                     78:   }
                     79: } {1 1 1}
                     80: do_test tkt3334-1.10 {
                     81:   execsql {
                     82:     SELECT count(*) FROM (SELECT a FROM t1) WHERE a=1;
                     83:   }
                     84: } {3}

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>