AryaWu/sqlite
0
1# 2007 Aug 292#3# The author disclaims copyright to this source code. In place of4# 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# $Id: mallocD.test,v 1.6 2008/02/18 22:24:58 drh Exp $13 14set testdir [file dirname $argv0]15source $testdir/tester.tcl16source $testdir/malloc_common.tcl17 18# Only run these tests if memory debugging is turned on.19#20if {!$MEMDEBUG} {21 puts "Skipping mallocD tests: not compiled with -DSQLITE_MEMDEBUG..."22 finish_test23 return24}25 26db close27sqlite3_simulate_device -char atomic28sqlite3 db test.db -vfs devsym29 30set PREP { 31 PRAGMA page_size = 1024;32 CREATE TABLE abc(a, b, c);33}34 35do_malloc_test mallocD-1 -sqlprep $PREP -sqlbody { 36 INSERT INTO abc VALUES(1, 2, 3);37}38 39do_malloc_test mallocD-2 -sqlprep $PREP -sqlbody {40 BEGIN;41 INSERT INTO abc VALUES(1, 2, 3);42 INSERT INTO abc VALUES(4, 5, 6);43 ROLLBACK;44}45 46do_malloc_test mallocD-3 -sqlprep $PREP -sqlbody {47 BEGIN;48 INSERT INTO abc VALUES(1, 2, 3);49 INSERT INTO abc VALUES(4, 5, randstr(1500,1500));50 COMMIT;51}52 53ifcapable attach {54 do_malloc_test mallocD-4 -sqlprep $PREP -sqlbody {55 ATTACH 'test2.db' AS aux;56 BEGIN;57 CREATE TABLE aux.def(d, e, f);58 INSERT INTO abc VALUES(4, 5, 6);59 COMMIT;60 }61}62 63sqlite3_simulate_device -char {}64 65finish_test66 