]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Add some code to permutations.test to make sure no test file modifies the shared...
authordanielk1977 <danielk1977@noemail.net>
Sat, 30 Aug 2008 13:25:10 +0000 (13:25 +0000)
committerdanielk1977 <danielk1977@noemail.net>
Sat, 30 Aug 2008 13:25:10 +0000 (13:25 +0000)
FossilOrigin-Name: 8565b7c66525dc7808a2a266deb1a0d995c99917

manifest
manifest.uuid
src/test1.c
test/permutations.test

index e457d993f33f6dbbdfa07608f175e98c15b386ab..a863d8973240ebd1676687a3f08461372359b374 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Make\ssure\sthread003.test\swaits\sfor\sall\sspawned\sthreads\sto\sfinish\sbefore\scontinuing.\s(CVS\s5644)
-D 2008-08-30T09:10:17
+C Add\ssome\scode\sto\spermutations.test\sto\smake\ssure\sno\stest\sfile\smodifies\sthe\sshared-cache\ssetting.\s(CVS\s5645)
+D 2008-08-30T13:25:11
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in 689e14735f862a5553bceef206d8c13e29504e44
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -153,7 +153,7 @@ F src/sqliteLimit.h f435e728c6b620ef7312814d660a81f9356eb5c8
 F src/status.c 8caa772cd9310bc297280f7cf0ede4d69ed5b801
 F src/table.c 22744786199c9195720c15a7a42cb97b2e2728d8
 F src/tclsqlite.c 420c7936d71f8318ea23b254c0d2cfc365135403
-F src/test1.c e5781c664321fc10092dda13d6c3d02ae844566f
+F src/test1.c 1b641aca173d8dfd2faf8f28aee0a4db20ac1534
 F src/test2.c eaa77124786649eedf47d3c5e94d8070c0da228f
 F src/test3.c e85b7ce5c28c3ce7fbdbf7f98e1467b19786c62b
 F src/test4.c 41056378671e7b00e6305fa9ac6fa27e6f96f406
@@ -446,7 +446,7 @@ F test/pager3.test 2323bf27fd5bd887b580247e5bce500ceee994b4
 F test/pageropt.test 3ee6578891baaca967f0bd349e4abfa736229e1a
 F test/pagesize.test 0d9ff3fedfce6e5ffe8fa7aca9b6d3433a2e843b
 F test/pcache.test a0fc9e965d039c4de24f9af929f9a25eb8be8539
-F test/permutations.test fcd155dd44b8e85377e57643dd6e7929309e8259
+F test/permutations.test ae920d74e8f8bbc17cb7d5012556c679cb830068
 F test/pragma.test b55931bbd5dd543e56fd942dbf4b7439619b09a6
 F test/pragma2.test 5364893491b9231dd170e3459bfc2e2342658b47
 F test/printf.test 262a5acd3158f788e9bdf7f18d718f3af32ff6ef
@@ -627,7 +627,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 1dbced29de5f59ba2ebf877edcadf171540374d1
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
-P 4113e778be7a1e3e7a67583913e137c66d88a190
-R 2a60c5d1cd625352cfef0ef380bf8453
+P 87c7e82f54cd446721d553d5c48ca2571b063669
+R e2c52fcf7b3d6d8b01994af543c655f8
 U danielk1977
-Z 3388fb24fd72ba29854409fc76ac5077
+Z 1886c1c3ded3c3046314dc2f653c5119
index 6f32107860320f8285759fe7ba441b7e9204ec2e..7941b1624cd7562a9c7e82586f461c094109ff94 100644 (file)
@@ -1 +1 @@
-87c7e82f54cd446721d553d5c48ca2571b063669
\ No newline at end of file
+8565b7c66525dc7808a2a266deb1a0d995c99917
\ No newline at end of file
index e6bc2aa882ee577a60c26fb3e9c9af4b98f221c4..96363527207815f66c90e675a7f90506c2dc75db 100644 (file)
@@ -13,7 +13,7 @@
 ** is not included in the SQLite library.  It is used for automated
 ** testing of the SQLite library.
 **
-** $Id: test1.c,v 1.321 2008/08/29 09:10:03 danielk1977 Exp $
+** $Id: test1.c,v 1.322 2008/08/30 13:25:11 danielk1977 Exp $
 */
 #include "sqliteInt.h"
 #include "tcl.h"
@@ -1368,7 +1368,7 @@ static int sqlite3_mprintf_hexdouble(
 }
 
 /*
-** Usage: sqlite3_enable_shared_cache      BOOLEAN
+** Usage: sqlite3_enable_shared_cache ?BOOLEAN?
 **
 */
 #if !defined(SQLITE_OMIT_SHARED_CACHE)
@@ -1383,18 +1383,21 @@ static int test_enable_shared(
   int ret = 0;
   extern int sqlite3SharedCacheEnabled;
 
-  if( objc!=2 ){
-    Tcl_WrongNumArgs(interp, 1, objv, "BOOLEAN");
-    return TCL_ERROR;
-  }
-  if( Tcl_GetBooleanFromObj(interp, objv[1], &enable) ){
+  if( objc!=2 && objc!=1 ){
+    Tcl_WrongNumArgs(interp, 1, objv, "?BOOLEAN?");
     return TCL_ERROR;
   }
   ret = sqlite3SharedCacheEnabled;
-  rc = sqlite3_enable_shared_cache(enable);
-  if( rc!=SQLITE_OK ){
-    Tcl_SetResult(interp, (char *)sqlite3ErrStr(rc), TCL_STATIC);
-    return TCL_ERROR;
+
+  if( objc==2 ){
+    if( Tcl_GetBooleanFromObj(interp, objv[1], &enable) ){
+      return TCL_ERROR;
+    }
+    rc = sqlite3_enable_shared_cache(enable);
+    if( rc!=SQLITE_OK ){
+      Tcl_SetResult(interp, (char *)sqlite3ErrStr(rc), TCL_STATIC);
+      return TCL_ERROR;
+    }
   }
   Tcl_SetObjResult(interp, Tcl_NewBooleanObj(ret));
   return TCL_OK;
index 775f0eea05df9896f115b7201374979413f13d2d..b149d14033231cedb52b21d56033ebaad96d085e 100644 (file)
@@ -9,7 +9,7 @@
 #
 #***********************************************************************
 #
-# $Id: permutations.test,v 1.25 2008/08/29 12:00:20 danielk1977 Exp $
+# $Id: permutations.test,v 1.26 2008/08/30 13:25:11 danielk1977 Exp $
 
 set testdir [file dirname $argv0]
 source $testdir/tester.tcl
@@ -133,13 +133,17 @@ proc run_tests {name args} {
   uplevel $options(-initialize)
   set ::permutations_presql $options(-presql)
 
-  foreach file $options(-include) {
+  foreach file [lsort $options(-include)] {
     if {[lsearch $options(-exclude) $file] < 0 &&
        ( $::perm::testfile eq "" ||
          $::perm::testfile eq $file ||
         "$::perm::testfile.test" eq $file )
     } {
+      set ::perm::shared_cache_setting [shared_cache_setting]
       uplevel source $::testdir/$file
+      if {$::perm::shared_cache_setting ne [shared_cache_setting]} {
+        error "File $::testdir/$file changed the shared cache setting from $::perm::shared_cache_setting to [shared_cache_setting]"
+      }
     } else {
       # puts "skipping file $file"
     }
@@ -148,6 +152,14 @@ proc run_tests {name args} {
   uplevel $options(-shutdown)
 }
 
+proc shared_cache_setting {} {
+  set ret 0
+  catch {
+    set ret [sqlite3_enable_shared_cache]
+  }
+  return $ret
+}
+
 #############################################################################
 # Start of tests