xref: /sqlite-3.40.0/test/quick.test (revision 5c327dbb)
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.47 2006/11/23 21:09:11 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    default {
23      set argv [linsert $argv 0 $arg]
24      break
25    }
26  }
27}
28
29set testdir [file dirname $argv0]
30source $testdir/tester.tcl
31rename finish_test really_finish_test
32proc finish_test {} {}
33set ISQUICK 1
34
35set EXCLUDE {
36  all.test
37  async.test
38  async2.test
39  btree2.test
40  btree3.test
41  btree4.test
42  btree5.test
43  btree6.test
44  corrupt.test
45  crash.test
46  loadext.test
47  malloc.test
48  malloc2.test
49  malloc3.test
50  memleak.test
51  misuse.test
52  quick.test
53  speed1.test
54
55  autovacuum_crash.test
56  btree8.test
57  utf16.test
58  shared_err.test
59  vtab_err.test
60}
61
62if {[sqlite3 -has-codec]} {
63  # lappend EXCLUDE \
64  #  conflict.test
65}
66
67
68# Files to include in the test.  If this list is empty then everything
69# that is not in the EXCLUDE list is run.
70#
71set INCLUDE {
72}
73
74foreach testfile [lsort -dictionary [glob $testdir/*.test]] {
75  set tail [file tail $testfile]
76  if {[lsearch -exact $EXCLUDE $tail]>=0} continue
77  if {[llength $INCLUDE]>0 && [lsearch -exact $INCLUDE $tail]<0} continue
78  source $testfile
79  catch {db close}
80  if {$sqlite_open_file_count>0} {
81    puts "$tail did not close all files: $sqlite_open_file_count"
82    incr nErr
83    lappend ::failList $tail
84  }
85}
86source $testdir/misuse.test
87
88set sqlite_open_file_count 0
89really_finish_test
90