| OLD | NEW | 
 | (Empty) | 
|    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 tests. |  | 
|    8 # |  | 
|    9 # $Id: quick.test,v 1.95 2009/03/16 14:48:19 danielk1977 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     -soak { |  | 
|   23        set SOAKTEST 1 |  | 
|   24     } |  | 
|   25     -start { |  | 
|   26        set STARTAT "[lshift argv]*" |  | 
|   27     } |  | 
|   28     default { |  | 
|   29       set argv [linsert $argv 0 $arg] |  | 
|   30       break |  | 
|   31     } |  | 
|   32   } |  | 
|   33 } |  | 
|   34  |  | 
|   35 set testdir [file dirname $argv0] |  | 
|   36 source $testdir/tester.tcl |  | 
|   37 rename finish_test really_finish_test |  | 
|   38 proc finish_test {} { |  | 
|   39   catch {db close} |  | 
|   40   show_memstats |  | 
|   41 } |  | 
|   42 set ISQUICK 1 |  | 
|   43  |  | 
|   44 set EXCLUDE { |  | 
|   45   all.test |  | 
|   46   async.test |  | 
|   47   async2.test |  | 
|   48   async3.test |  | 
|   49   backup_ioerr.test |  | 
|   50   corrupt.test |  | 
|   51   corruptC.test |  | 
|   52   crash.test |  | 
|   53   crash2.test |  | 
|   54   crash3.test |  | 
|   55   crash4.test |  | 
|   56   crash5.test |  | 
|   57   crash6.test |  | 
|   58   crash7.test |  | 
|   59   delete3.test |  | 
|   60   fts3.test |  | 
|   61   fts.test |  | 
|   62   fts1.test |  | 
|   63   fts2.test |  | 
|   64   fuzz.test |  | 
|   65   fuzz3.test |  | 
|   66   fuzz_malloc.test |  | 
|   67   in2.test |  | 
|   68   loadext.test |  | 
|   69   memleak.test |  | 
|   70   misc7.test |  | 
|   71   misuse.test |  | 
|   72   mutex2.test |  | 
|   73   notify2.test |  | 
|   74   onefile.test |  | 
|   75   permutations.test |  | 
|   76   quick.test |  | 
|   77   savepoint4.test |  | 
|   78   savepoint6.test |  | 
|   79   select9.test |  | 
|   80   soak.test |  | 
|   81   speed1.test |  | 
|   82   speed1p.test |  | 
|   83   speed2.test |  | 
|   84   speed3.test |  | 
|   85   speed4.test |  | 
|   86   speed4p.test |  | 
|   87   sqllimits1.test |  | 
|   88   tkt2686.test |  | 
|   89   thread001.test |  | 
|   90   thread002.test |  | 
|   91   thread003.test |  | 
|   92   thread004.test |  | 
|   93   thread005.test |  | 
|   94   trans2.test |  | 
|   95   vacuum3.test |  | 
|   96  |  | 
|   97   incrvacuum_ioerr.test |  | 
|   98   autovacuum_crash.test |  | 
|   99   btree8.test |  | 
|  100   shared_err.test |  | 
|  101   vtab_err.test |  | 
|  102   veryquick.test |  | 
|  103   mallocAll.test |  | 
|  104 } |  | 
|  105  |  | 
|  106 if {[sqlite3 -has-codec]} { |  | 
|  107   # lappend EXCLUDE \ |  | 
|  108   #  conflict.test |  | 
|  109 } |  | 
|  110  |  | 
|  111  |  | 
|  112 # Files to include in the test.  If this list is empty then everything |  | 
|  113 # that is not in the EXCLUDE list is run. |  | 
|  114 # |  | 
|  115 set INCLUDE { |  | 
|  116 } |  | 
|  117  |  | 
|  118 # If the QUICKTEST_INCLUDE environment variable is set, then interpret |  | 
|  119 # it as a list of test files. Always run these files, even if they |  | 
|  120 # begin with "malloc*" or "ioerr*" or are part of the EXCLUDE list |  | 
|  121 # defined above. |  | 
|  122 # |  | 
|  123 set QUICKTEST_INCLUDE {} |  | 
|  124 catch { set QUICKTEST_INCLUDE $env(QUICKTEST_INCLUDE) } |  | 
|  125  |  | 
|  126 foreach testfile [lsort -dictionary [glob $testdir/*.test]] { |  | 
|  127   set tail [file tail $testfile] |  | 
|  128   if { [lsearch $QUICKTEST_INCLUDE $tail]<0 } { |  | 
|  129     # If this is "veryquick.test", do not run any of the malloc or  |  | 
|  130     # IO error simulations. |  | 
|  131     if {[info exists ISVERYQUICK] && ( |  | 
|  132       [string match *malloc* $testfile] || [string match *ioerr* $testfile] |  | 
|  133     ) } { |  | 
|  134       continue |  | 
|  135     } |  | 
|  136     if {[lsearch -exact $EXCLUDE $tail]>=0} continue |  | 
|  137   } |  | 
|  138   if {[llength $INCLUDE]>0 && [lsearch -exact $INCLUDE $tail]<0} continue |  | 
|  139   if {[info exists STARTAT] && [string match $STARTAT $tail]} {unset STARTAT} |  | 
|  140   if {[info exists STARTAT]} continue |  | 
|  141   source $testfile |  | 
|  142   catch {db close} |  | 
|  143   if {$sqlite_open_file_count>0} { |  | 
|  144     puts "$tail did not close all files: $sqlite_open_file_count" |  | 
|  145     incr nErr |  | 
|  146     lappend ::failList $tail |  | 
|  147     set sqlite_open_file_count 0 |  | 
|  148   } |  | 
|  149 } |  | 
|  150 #set argv quick |  | 
|  151 #source $testdir/permutations.test |  | 
|  152 #set argv "" |  | 
|  153 source $testdir/misuse.test |  | 
|  154  |  | 
|  155 set sqlite_open_file_count 0 |  | 
|  156 really_finish_test |  | 
| OLD | NEW |