persistentstorage/sqlite3api/TEST/TclScript/mallocAll.test
changeset 0 08ec8eefde2f
equal deleted inserted replaced
-1:000000000000 0:08ec8eefde2f
       
     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 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     incr nErr
       
    60     lappend ::failList $tail
       
    61     set sqlite_open_file_count 0
       
    62   }
       
    63 }
       
    64 source $testdir/misuse.test
       
    65 
       
    66 set sqlite_open_file_count 0
       
    67 really_finish_test