1f998b730Sdrh# 2007 Aug 29 2f998b730Sdrh# 3f998b730Sdrh# The author disclaims copyright to this source code. In place of 4f998b730Sdrh# a legal notice, here is a blessing: 5f998b730Sdrh# 6f998b730Sdrh# May you do good and not evil. 7f998b730Sdrh# May you find forgiveness for yourself and forgive others. 8f998b730Sdrh# May you share freely, never taking more than you give. 9f998b730Sdrh# 10f998b730Sdrh#*********************************************************************** 11f998b730Sdrh# 12f998b730Sdrh# This test script checks that tickets #2794, #2795, #2796, and #2797 13f998b730Sdrh# have been fixed. 14f998b730Sdrh# 15*eee4c8caSdrh# $Id: mallocF.test,v 1.4 2008/02/18 22:24:58 drh Exp $ 16f998b730Sdrh 17f998b730Sdrhset testdir [file dirname $argv0] 18f998b730Sdrhsource $testdir/tester.tcl 19*eee4c8caSdrhsource $testdir/malloc_common.tcl 20f998b730Sdrh 21f998b730Sdrh# Only run these tests if memory debugging is turned on. 22f998b730Sdrh# 23*eee4c8caSdrhif {!$MEMDEBUG} { 24c4dd3fd2Sdrh puts "Skipping mallocF tests: not compiled with -DSQLITE_MEMDEBUG..." 25f998b730Sdrh finish_test 26f998b730Sdrh return 27f998b730Sdrh} 28f998b730Sdrh 29f998b730Sdrh# tickets #2794 and #2795 and #2797 30f998b730Sdrh# 31f998b730Sdrhset PREP { 32f998b730Sdrh CREATE TABLE t1(x,y); 33f998b730Sdrh INSERT INTO t1 VALUES('abc123', 5); 34f998b730Sdrh INSERT INTO t1 VALUES('xyz987', 42); 35f998b730Sdrh} 36f998b730Sdrhdo_malloc_test malloeF-1 -sqlprep $PREP -sqlbody { 37f998b730Sdrh SELECT * FROM t1 WHERE x GLOB 'abc*' 38f998b730Sdrh} 39f998b730Sdrh 40f998b730Sdrh# ticket #2796 41f998b730Sdrh# 42f998b730Sdrhset PREP { 43f998b730Sdrh CREATE TABLE t1(x PRIMARY KEY,y UNIQUE); 44f998b730Sdrh INSERT INTO t1 VALUES('abc123', 5); 45f998b730Sdrh INSERT INTO t1 VALUES('xyz987', 42); 46f998b730Sdrh} 47f998b730Sdrhdo_malloc_test malloeF-2 -sqlprep $PREP -sqlbody { 48f998b730Sdrh SELECT x FROM t1 49f998b730Sdrh WHERE y=1 OR y=2 OR y=3 OR y=4 OR y=5 50f998b730Sdrh OR y=6 OR y=7 OR y=8 OR y=9 OR y=10 51f998b730Sdrh OR y=11 OR y=12 OR y=13 OR y=14 OR y=15 52f998b730Sdrh OR y=x 53f998b730Sdrh} 54f998b730Sdrh 55f998b730Sdrhset PREP { 56f998b730Sdrh CREATE TABLE t1(x PRIMARY KEY,y UNIQUE); 57f998b730Sdrh INSERT INTO t1 VALUES('abc123', 5); 58f998b730Sdrh INSERT INTO t1 VALUES('xyz987', 42); 59f998b730Sdrh} 60f998b730Sdrhdo_malloc_test malloeF-3 -sqlprep $PREP -sqlbody { 61f998b730Sdrh SELECT x FROM t1 WHERE y BETWEEN 10 AND 29 62f998b730Sdrh} 63f998b730Sdrh 6449df6b74Sdrh# Ticket #2843 6549df6b74Sdrh# 6649df6b74Sdrhset PREP { 6749df6b74Sdrh CREATE TABLE t1(x); 6849df6b74Sdrh CREATE TRIGGER r1 BEFORE INSERT ON t1 BEGIN 6949df6b74Sdrh SELECT 'hello'; 7049df6b74Sdrh END; 7149df6b74Sdrh} 7249df6b74Sdrhdo_malloc_test mallocF-4 -sqlprep $PREP -sqlbody { 7349df6b74Sdrh INSERT INTO t1 VALUES(random()); 7449df6b74Sdrh} 7549df6b74Sdrh 76f998b730Sdrhfinish_test 77