Home | History | Annotate | Download | only in test
      1 # 2007 Aug 29
      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 test script checks that tickets #2784 and #2789 have been fixed.
     13 # 
     14 # $Id: mallocE.test,v 1.3 2008/02/18 22:24:58 drh Exp $
     15 
     16 set testdir [file dirname $argv0]
     17 source $testdir/tester.tcl
     18 source $testdir/malloc_common.tcl
     19 
     20 # Only run these tests if memory debugging is turned on.
     21 #
     22 if {!$MEMDEBUG} {
     23    puts "Skipping mallocE tests: not compiled with -DSQLITE_MEMDEBUG..."
     24    finish_test
     25    return
     26 }
     27 
     28 # ticket #2784
     29 #
     30 set PREP { 
     31   PRAGMA page_size = 1024;
     32   CREATE TABLE t1(a, b, c);
     33   CREATE TABLE t2(x, y, z);
     34 }
     35 do_malloc_test mallocE-1 -sqlprep $PREP -sqlbody { 
     36   SELECT p, q FROM (SELECT a+b AS p, b+c AS q FROM t1, t2 WHERE c>5)
     37               LEFT JOIN t2 ON p=x;
     38 }
     39 
     40 # Ticket #2789
     41 #
     42 do_malloc_test mallocE-2 -sqlprep $PREP -sqlbody { 
     43   SELECT x, y2 FROM (SELECT a+b AS x, b+c AS y2 FROM t1, t2 WHERE c>5)
     44               LEFT JOIN t2 USING(x) WHERE y2>11;
     45 }
     46 
     47 
     48 finish_test
     49