blob: e23a986f7dae1482bcb03b38b67217b1fe5ed047 [file] [log] [blame]
drhb19a2bc2001-09-16 00:13:26 +00001#
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#
danielk1977311019b2006-01-10 07:14:23 +00009# $Id: quick.test,v 1.41 2006/01/10 07:14:24 danielk1977 Exp $
danielk1977aef0bf62005-12-30 16:28:01 +000010
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}
drhb19a2bc2001-09-16 00:13:26 +000028
29set testdir [file dirname $argv0]
30source $testdir/tester.tcl
31rename finish_test really_finish_test
32proc finish_test {} {}
drh193a6b42002-07-07 16:52:46 +000033set ISQUICK 1
drhb19a2bc2001-09-16 00:13:26 +000034
35set EXCLUDE {
36 all.test
danielk197713a68c32005-12-15 10:11:30 +000037 async.test
drhb19a2bc2001-09-16 00:13:26 +000038 btree2.test
drh92f02c32004-09-02 14:57:08 +000039 btree3.test
40 btree4.test
41 btree5.test
42 btree6.test
drhee696e22004-08-30 16:52:17 +000043 corrupt.test
44 crash.test
drh6d4abfb2001-10-22 02:58:08 +000045 malloc.test
danielk19776b456a22005-03-21 04:04:02 +000046 malloc2.test
danielk197700fd9572005-12-07 06:27:43 +000047 malloc3.test
48 malloc4.test
drh4b59ab52002-08-24 18:24:51 +000049 memleak.test
drh94e92032003-02-16 22:21:32 +000050 misuse.test
drhee696e22004-08-30 16:52:17 +000051 quick.test
danielk197714db2662006-01-09 16:12:04 +000052
danielk197794daf7f2004-11-08 09:26:09 +000053 autovacuum_crash.test
danielk1977ce9a7b12004-11-13 13:19:56 +000054 btree8.test
danielk1977311019b2006-01-10 07:14:23 +000055 utf16.test
drhb19a2bc2001-09-16 00:13:26 +000056}
57
drhef4ac8f2004-06-19 00:16:31 +000058if {[sqlite3 -has-codec]} {
drh25d65432004-07-22 15:02:25 +000059 # lappend EXCLUDE \
60 # conflict.test
drh9eb9e262004-02-11 02:18:05 +000061}
62
drhb19a2bc2001-09-16 00:13:26 +000063foreach testfile [lsort -dictionary [glob $testdir/*.test]] {
64 set tail [file tail $testfile]
65 if {[lsearch -exact $EXCLUDE $tail]>=0} continue
66 source $testfile
drh94e92032003-02-16 22:21:32 +000067 catch {db close}
68 if {$sqlite_open_file_count>0} {
69 puts "$tail did not close all files: $sqlite_open_file_count"
70 incr nErr
71 lappend ::failList $tail
72 }
drhb19a2bc2001-09-16 00:13:26 +000073}
danielk1977c8c11582004-06-29 13:41:21 +000074source $testdir/misuse.test
drhb19a2bc2001-09-16 00:13:26 +000075
drh94e92032003-02-16 22:21:32 +000076set sqlite_open_file_count 0
drhb19a2bc2001-09-16 00:13:26 +000077really_finish_test