xref: /sqlite-3.40.0/test/veryquick.test (revision 9afe6847)
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: veryquick.test,v 1.7 2008/06/24 11:21:21 danielk1977 Exp $
10
11proc lshift {lvar} {
12  upvar $lvar l
13  set ret [lindex $l 0]
14  set l [lrange $l 1 end]
15  return $ret
16}
17while {[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
35set testdir [file dirname $argv0]
36source $testdir/tester.tcl
37rename finish_test really_finish_test
38proc finish_test {} {}
39set ISQUICK 1
40
41set EXCLUDE {
42  all.test
43  async.test
44  async2.test
45  altermalloc.test
46  attachmalloc.test
47  autovacuum_crash.test
48  autovacuum_ioerr.test
49  autovacuum_ioerr2.test
50  bitvec.test
51  corrupt.test
52  crash.test
53  crash2.test
54  crash3.test
55  crash4.test
56  crash6.test
57  crash7.test
58  diskfull.test
59  exclusive3.test
60  fts3.test
61  fuzz.test
62  fuzz_malloc.test
63  in2.test
64  interrupt.test
65  ioerr.test
66  ioerr2.test
67  jrnlmode3.test
68  loadext.test
69  mallocAll.test
70  malloc.test
71  malloc2.test
72  malloc3.test
73  malloc4.test
74  malloc5.test
75  malloc6.test
76  malloc7.test
77  malloc8.test
78  malloc9.test
79  mallocA.test
80  mallocB.test
81  mallocC.test
82  mallocD.test
83  mallocE.test
84  mallocF.test
85  mallocG.test
86  memleak.test
87  misc7.test
88  misuse.test
89  mutex2.test
90  onefile.test
91  permutations.test
92  quick.test
93  select9.test
94  soak.test
95  speed1.test
96  speed1p.test
97  speed2.test
98  speed3.test
99  speed4.test
100  speed4p.test
101  sqllimits1.test
102  vacuum3.test
103
104  tkt2686.test
105  thread001.test
106  thread002.test
107
108  incrvacuum_ioerr.test
109  autovacuum_crash.test
110  btree8.test
111  utf16.test
112  shared_err.test
113  vtab_err.test
114  veryquick.test
115}
116
117if {[sqlite3 -has-codec]} {
118  # lappend EXCLUDE \
119  #  conflict.test
120}
121
122
123# Files to include in the test.  If this list is empty then everything
124# that is not in the EXCLUDE list is run.
125#
126set INCLUDE {
127}
128
129foreach testfile [lsort -dictionary [glob $testdir/*.test]] {
130  set tail [file tail $testfile]
131  if {[lsearch -exact $EXCLUDE $tail]>=0} continue
132  if {[llength $INCLUDE]>0 && [lsearch -exact $INCLUDE $tail]<0} continue
133  if {[info exists STARTAT] && [string match $STARTAT $tail]} {unset STARTAT}
134  if {[info exists STARTAT]} continue
135  source $testfile
136  catch {db close}
137  if {$sqlite_open_file_count>0} {
138    puts "$tail did not close all files: $sqlite_open_file_count"
139    incr nErr
140    lappend ::failList $tail
141    set sqlite_open_file_count 0
142  }
143}
144set argv veryquick
145source $testdir/permutations.test
146set argv ""
147source $testdir/misuse.test
148
149set sqlite_open_file_count 0
150really_finish_test
151