1 # 2 # May you do good and not evil. 3 # May you find forgiveness for yourself and forgive others. 4 # May you share freely, never taking more than you give. 5 # 6 #*********************************************************************** 7 # This file runs all out-of-memory tests. 8 # 9 # $Id: mallocAll.test,v 1.1 2007/11/26 13:36:00 drh Exp $ 10 11 proc lshift {lvar} { 12 upvar $lvar l 13 set ret [lindex $l 0] 14 set l [lrange $l 1 end] 15 return $ret 16 } 17 while {[set arg [lshift argv]] != ""} { 18 switch -- $arg { 19 -sharedpagercache { 20 sqlite3_enable_shared_cache 1 21 } 22 default { 23 set argv [linsert $argv 0 $arg] 24 break 25 } 26 } 27 } 28 29 set testdir [file dirname $argv0] 30 source $testdir/tester.tcl 31 rename finish_test really_finish_test 32 proc finish_test {} {} 33 set G(isquick) 1 34 35 set EXCLUDE { 36 mallocAll.test 37 } 38 39 if {[sqlite3 -has-codec]} { 40 # lappend EXCLUDE \ 41 # conflict.test 42 } 43 44 45 # Files to include in the test. If this list is empty then everything 46 # that is not in the EXCLUDE list is run. 47 # 48 set INCLUDE { 49 } 50 51 foreach testfile [lsort -dictionary [glob $testdir/*malloc*.test]] { 52 set tail [file tail $testfile] 53 if {[lsearch -exact $EXCLUDE $tail]>=0} continue 54 if {[llength $INCLUDE]>0 && [lsearch -exact $INCLUDE $tail]<0} continue 55 source $testfile 56 catch {db close} 57 if {$sqlite_open_file_count>0} { 58 puts "$tail did not close all files: $sqlite_open_file_count" 59 fail_test $tail 60 set sqlite_open_file_count 0 61 } 62 } 63 source $testdir/misuse.test 64 65 set sqlite_open_file_count 0 66 really_finish_test 67