xref: /sqlite-3.40.0/test/veryquick.test (revision 8a29dfde)
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.2 2008/04/10 13:33:18 drh 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  loadext.test
68  mallocAll.test
69  malloc.test
70  malloc2.test
71  malloc3.test
72  malloc4.test
73  malloc5.test
74  malloc6.test
75  malloc7.test
76  malloc8.test
77  malloc9.test
78  mallocA.test
79  mallocB.test
80  mallocC.test
81  mallocD.test
82  mallocE.test
83  mallocF.test
84  mallocG.test
85  memleak.test
86  misc7.test
87  misuse.test
88  onefile.test
89  quick.test
90  soak.test
91  speed1.test
92  speed1p.test
93  speed2.test
94  speed3.test
95  speed4.test
96  speed4p.test
97  sqllimits1.test
98  vacuum3.test
99
100  tkt2686.test
101  thread001.test
102  thread002.test
103
104  incrvacuum_ioerr.test
105  autovacuum_crash.test
106  btree8.test
107  utf16.test
108  shared_err.test
109  vtab_err.test
110  veryquick.test
111}
112
113if {[sqlite3 -has-codec]} {
114  # lappend EXCLUDE \
115  #  conflict.test
116}
117
118
119# Files to include in the test.  If this list is empty then everything
120# that is not in the EXCLUDE list is run.
121#
122set INCLUDE {
123}
124
125foreach testfile [lsort -dictionary [glob $testdir/*.test]] {
126  set tail [file tail $testfile]
127  if {[lsearch -exact $EXCLUDE $tail]>=0} continue
128  if {[llength $INCLUDE]>0 && [lsearch -exact $INCLUDE $tail]<0} continue
129  if {[info exists STARTAT] && [string match $STARTAT $tail]} {unset STARTAT}
130  if {[info exists STARTAT]} continue
131  source $testfile
132  catch {db close}
133  if {$sqlite_open_file_count>0} {
134    puts "$tail did not close all files: $sqlite_open_file_count"
135    incr nErr
136    lappend ::failList $tail
137    set sqlite_open_file_count 0
138  }
139}
140source $testdir/misuse.test
141
142set sqlite_open_file_count 0
143really_finish_test
144