persistentstorage/sqlite3api/TEST/TclScript/quick.test
changeset 0 08ec8eefde2f
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/persistentstorage/sqlite3api/TEST/TclScript/quick.test	Fri Jan 22 11:06:30 2010 +0200
@@ -0,0 +1,146 @@
+#
+# Portions Copyright (c) 2007-2008 Nokia Corporation and/or its subsidiaries. All rights reserved.
+#
+#    May you do good and not evil.
+#    May you find forgiveness for yourself and forgive others.
+#    May you share freely, never taking more than you give.
+#
+#***********************************************************************
+# This file runs all tests.
+#
+# $Id: quick.test,v 1.87 2008/09/09 18:28:07 danielk1977 Exp $
+
+proc lshift {lvar} {
+  upvar $lvar l
+  set ret [lindex $l 0]
+  set l [lrange $l 1 end]
+  return $ret
+}
+while {[set arg [lshift argv]] != ""} {
+  switch -- $arg {
+    -sharedpagercache {
+      sqlite3_enable_shared_cache 1
+    }
+    -soak {
+       set SOAKTEST 1
+    }
+    -start {
+       set STARTAT "[lshift argv]*"
+    }
+    default {
+      set argv [linsert $argv 0 $arg]
+      break
+    }
+  }
+}
+
+set testdir [file dirname $argv0]
+source $testdir/tester.tcl
+rename finish_test really_finish_test
+proc finish_test {} {}
+set ISQUICK 1
+
+set EXCLUDE {
+  all.test
+  async.test
+  async2.test
+  async3.test
+  corrupt.test
+  crash.test
+  crash2.test
+  crash3.test
+  crash4.test
+  crash5.test
+  crash6.test
+  crash7.test
+  delete3.test
+  fts3.test
+  fuzz.test
+  fuzz3.test
+  fuzz_malloc.test
+  in2.test
+  loadext.test
+  memleak.test
+  misc7.test
+  misuse.test
+  mutex2.test
+  onefile.test
+  permutations.test
+  quick.test
+  rtree.test
+  select9.test
+  soak.test
+  speed1.test
+  speed1p.test
+  speed2.test
+  speed3.test
+  speed4.test
+  speed4p.test
+  sqllimits1.test
+  tkt2686.test
+  thread001.test
+  thread002.test
+  thread003.test
+  trans2.test
+  vacuum3.test
+
+  incrvacuum_ioerr.test
+  autovacuum_crash.test
+  btree8.test
+  shared_err.test
+  vtab_err.test
+  veryquick.test
+  mallocAll.test
+}
+
+if {[sqlite3 -has-codec]} {
+  # lappend EXCLUDE \
+  #  conflict.test
+}
+
+
+# Files to include in the test.  If this list is empty then everything
+# that is not in the EXCLUDE list is run.
+#
+set INCLUDE {
+}
+
+foreach testfile [lsort -dictionary [glob $testdir/*.test]] {
+  # If this is "veryquick.test", do not run any of the malloc or 
+  # IO error simulations.
+  if {[info exists ISVERYQUICK] && (
+    [string match *malloc* $testfile] || [string match *ioerr* $testfile]
+  ) } {
+    continue
+  }
+
+  #Symbian OS: tail is overwritten in misc5.test, so use a new var tname for it here.
+  set tname [file tail $testfile]
+  if {[lsearch -exact $EXCLUDE $tname]>=0} continue
+  if {[llength $INCLUDE]>0 && [lsearch -exact $INCLUDE $tname]<0} continue
+  if {[info exists STARTAT] && [string match $STARTAT $tname]} {unset STARTAT}
+  if {[info exists STARTAT]} continue
+  print_text "" $tname
+  start_case $tname
+  source $testfile
+  catch {db close}
+  if {$sqlite_open_file_count>0} {
+    puts "$tname did not close all files: $sqlite_open_file_count"
+    # Symbian OS: Set and increase error count with do_fail procedure (definition in Tester.tcl)
+    do_fail $tname 
+    set sqlite_open_file_count 0
+  }
+
+  foreach var [info vars] {
+    catch { if {[string length [set $var]] > 25000} { unset $var } }
+  }
+  
+  end_case $tname
+}
+#set argv quick
+#source $testdir/permutations.test
+#set argv ""
+source $testdir/misuse.test
+
+set sqlite_open_file_count 0
+really_finish_test