Home | History | Annotate | Download | only in test
      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