1: # 2006 June 25
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: # This file attempts to check the library in an out-of-memory situation.
12: #
13: # $Id: malloc6.test,v 1.1.1.1 2012/02/21 17:04:16 misho Exp $
14:
15: set testdir [file dirname $argv0]
16: source $testdir/tester.tcl
17: source $testdir/malloc_common.tcl
18:
19: # Only run these tests if memory debugging is turned on.
20: #
21: if {!$MEMDEBUG} {
22: puts "Skipping malloc6 tests: not compiled with -DSQLITE_MEMDEBUG..."
23: finish_test
24: return
25: }
26:
27:
28: set sqlite_os_trace 0
29: do_malloc_test malloc6-1 -tclprep {
30: db close
31: } -tclbody {
32: if {[catch {sqlite3 db test.db}]} {
33: error "out of memory"
34: }
35: sqlite3_extended_result_codes db 1
36: } -sqlbody {
37: DROP TABLE IF EXISTS t1;
38: CREATE TABLE IF NOT EXISTS t1(
39: a int, b float, c double, d text, e varchar(20),
40: primary key(a,b,c)
41: );
42: CREATE TABLE IF NOT EXISTS t1(
43: a int, b float, c double, d text, e varchar(20),
44: primary key(a,b,c)
45: );
46: DROP TABLE IF EXISTS t1;
47: }
48:
49: # Ensure that no file descriptors were leaked.
50: do_test malloc6-1.X {
51: catch {db close}
52: set sqlite_open_file_count
53: } {0}
54:
55: finish_test
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>