77 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
# 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.
 | 
						|
# 
 | 
						|
# $Id: mallocF.test,v 1.4 2008/02/18 22:24:58 drh Exp $
 | 
						|
 | 
						|
set testdir [file dirname $argv0]
 | 
						|
source $testdir/tester.tcl
 | 
						|
source $testdir/malloc_common.tcl
 | 
						|
 | 
						|
# Only run these tests if memory debugging is turned on.
 | 
						|
#
 | 
						|
if {!$MEMDEBUG} {
 | 
						|
   puts "Skipping mallocF tests: not compiled with -DSQLITE_MEMDEBUG..."
 | 
						|
   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
 | 
						|
}
 | 
						|
 | 
						|
# 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());
 | 
						|
}
 | 
						|
 | 
						|
finish_test
 |