1: # 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: #
12: # $Id: mallocD.test,v 1.1.1.1 2012/02/21 17:04:16 misho Exp $
13:
14: set testdir [file dirname $argv0]
15: source $testdir/tester.tcl
16: source $testdir/malloc_common.tcl
17:
18: # Only run these tests if memory debugging is turned on.
19: #
20: if {!$MEMDEBUG} {
21: puts "Skipping mallocD tests: not compiled with -DSQLITE_MEMDEBUG..."
22: finish_test
23: return
24: }
25:
26: db close
27: sqlite3_simulate_device -char atomic
28: sqlite3 db test.db -vfs devsym
29:
30: set PREP {
31: PRAGMA page_size = 1024;
32: CREATE TABLE abc(a, b, c);
33: }
34:
35: do_malloc_test mallocD-1 -sqlprep $PREP -sqlbody {
36: INSERT INTO abc VALUES(1, 2, 3);
37: }
38:
39: do_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:
46: do_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:
53: ifcapable 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:
63: sqlite3_simulate_device -char {}
64:
65: finish_test
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>