blob: bd44449d2bd57f9e46403065dc10511f23787232 [file] [log] [blame]
danielk197765839c62007-08-30 08:08:17 +00001# 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#
danielk1977bf260972008-01-22 11:50:13 +000012# $Id: mallocD.test,v 1.5 2008/01/22 11:50:13 danielk1977 Exp $
danielk197765839c62007-08-30 08:08:17 +000013
14set testdir [file dirname $argv0]
15source $testdir/tester.tcl
danielk1977369ff422007-09-03 07:31:09 +000016
drhdec6fae2007-09-03 17:02:50 +000017# Only run these tests if memory debugging is turned on.
18#
19ifcapable !memdebug {
20 puts "Skipping mallocD tests: not compiled with -DSQLITE_MEMDEBUG..."
21 finish_test
22 return
23}
24source $testdir/malloc_common.tcl
danielk197765839c62007-08-30 08:08:17 +000025
danielk1977bf260972008-01-22 11:50:13 +000026db close
danielk197765839c62007-08-30 08:08:17 +000027sqlite3_simulate_device -char atomic
danielk1977bf260972008-01-22 11:50:13 +000028sqlite3 db test.db -vfs devsym
danielk197765839c62007-08-30 08:08:17 +000029
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
danielk19775a8f9372007-10-09 08:29:32 +000053ifcapable 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 }
danielk197765839c62007-08-30 08:08:17 +000061}
62
63sqlite3_simulate_device -char {}
64
65finish_test