2007-11-26 16:36:00 +03:00
|
|
|
# 2007 Aug 29
|
|
|
|
#
|
|
|
|
# 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.
|
|
|
|
#
|
|
|
|
#***********************************************************************
|
|
|
|
#
|
|
|
|
# This test script checks that tickets #2794, #2795, #2796, and #2797
|
|
|
|
# have been fixed.
|
|
|
|
#
|
2008-02-19 01:24:57 +03:00
|
|
|
# $Id: mallocF.test,v 1.4 2008/02/18 22:24:58 drh Exp $
|
2007-11-26 16:36:00 +03:00
|
|
|
|
|
|
|
set testdir [file dirname $argv0]
|
|
|
|
source $testdir/tester.tcl
|
2008-02-19 01:24:57 +03:00
|
|
|
source $testdir/malloc_common.tcl
|
2007-11-26 16:36:00 +03:00
|
|
|
|
|
|
|
# Only run these tests if memory debugging is turned on.
|
|
|
|
#
|
2008-02-19 01:24:57 +03:00
|
|
|
if {!$MEMDEBUG} {
|
2008-01-22 04:48:05 +03:00
|
|
|
puts "Skipping mallocF tests: not compiled with -DSQLITE_MEMDEBUG..."
|
2007-11-26 16:36:00 +03:00
|
|
|
finish_test
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
# tickets #2794 and #2795 and #2797
|
|
|
|
#
|
|
|
|
set PREP {
|
|
|
|
CREATE TABLE t1(x,y);
|
|
|
|
INSERT INTO t1 VALUES('abc123', 5);
|
|
|
|
INSERT INTO t1 VALUES('xyz987', 42);
|
|
|
|
}
|
|
|
|
do_malloc_test malloeF-1 -sqlprep $PREP -sqlbody {
|
|
|
|
SELECT * FROM t1 WHERE x GLOB 'abc*'
|
|
|
|
}
|
|
|
|
|
|
|
|
# ticket #2796
|
|
|
|
#
|
|
|
|
set PREP {
|
|
|
|
CREATE TABLE t1(x PRIMARY KEY,y UNIQUE);
|
|
|
|
INSERT INTO t1 VALUES('abc123', 5);
|
|
|
|
INSERT INTO t1 VALUES('xyz987', 42);
|
|
|
|
}
|
|
|
|
do_malloc_test malloeF-2 -sqlprep $PREP -sqlbody {
|
|
|
|
SELECT x FROM t1
|
|
|
|
WHERE y=1 OR y=2 OR y=3 OR y=4 OR y=5
|
|
|
|
OR y=6 OR y=7 OR y=8 OR y=9 OR y=10
|
|
|
|
OR y=11 OR y=12 OR y=13 OR y=14 OR y=15
|
|
|
|
OR y=x
|
|
|
|
}
|
|
|
|
|
|
|
|
set PREP {
|
|
|
|
CREATE TABLE t1(x PRIMARY KEY,y UNIQUE);
|
|
|
|
INSERT INTO t1 VALUES('abc123', 5);
|
|
|
|
INSERT INTO t1 VALUES('xyz987', 42);
|
|
|
|
}
|
|
|
|
do_malloc_test malloeF-3 -sqlprep $PREP -sqlbody {
|
|
|
|
SELECT x FROM t1 WHERE y BETWEEN 10 AND 29
|
|
|
|
}
|
|
|
|
|
2007-12-14 18:12:21 +03:00
|
|
|
# Ticket #2843
|
|
|
|
#
|
|
|
|
set PREP {
|
|
|
|
CREATE TABLE t1(x);
|
|
|
|
CREATE TRIGGER r1 BEFORE INSERT ON t1 BEGIN
|
|
|
|
SELECT 'hello';
|
|
|
|
END;
|
|
|
|
}
|
|
|
|
do_malloc_test mallocF-4 -sqlprep $PREP -sqlbody {
|
|
|
|
INSERT INTO t1 VALUES(random());
|
|
|
|
}
|
|
|
|
|
2007-11-26 16:36:00 +03:00
|
|
|
finish_test
|