From: danielk1977 Date: Sat, 8 Jan 2005 02:35:44 +0000 (+0000) Subject: Minor test script changes to allow all.test to run when SQLITE_DEFAULT_AUTOVACUUM... X-Git-Tag: version-3.6.10~3970 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=59adfaa6ceca0e9b247853ee8bbf62599f8651a6;p=thirdparty%2Fsqlite.git Minor test script changes to allow all.test to run when SQLITE_DEFAULT_AUTOVACUUM=1 is defined. (CVS 2182) FossilOrigin-Name: 5023b1dba2e61bb10d1b488874e3d3eea3973145 --- diff --git a/manifest b/manifest index 88a66417e7..86632c6ab2 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Reset\sthe\stemp_store_directory\seach\siteration\sof\stests\sin\sall.test.\s(CVS\s2181) -D 2005-01-07T10:42:48 +C Minor\stest\sscript\schanges\sto\sallow\sall.test\sto\srun\swhen\sSQLITE_DEFAULT_AUTOVACUUM=1\sis\sdefined.\s(CVS\s2182) +D 2005-01-08T02:35:44 F Makefile.in ecf441ac5ca1ccfc8748a8a9537706e69893dfa4 F Makefile.linux-gcc a9e5a0d309fa7c38e7c14d3ecf7690879d3a5457 F README a01693e454a00cc117967e3f9fdab2d4d52e9bc1 @@ -84,7 +84,7 @@ F src/vdbeaux.c a7c4c90786e2633b38f2d89f3dc49aed747454e4 F src/vdbemem.c 5876c8abf4374fef671f4fd8dc333ef3fc95a2f0 F src/where.c 2fc4efc7375eb7f1ae18030311bcd6a18e3a0f46 F tclinstaller.tcl 36478c3bbfc5b93ceac42d94e3c736937b808432 -F test/all.test 8dbfc6e5d0588cd600e347de2839723d9691b099 +F test/all.test 87cc4ea3cff6da70aefd789c6ef539dbb1c27eec F test/alter.test 95c57a4f461fa81293e0dccef7f83889aadb169a F test/attach.test f39069efd4394422798f249df9a31489aa941ee1 F test/attach2.test eeb987770f4dbe68bd29afdbc2e8cff0142e6eb5 @@ -114,7 +114,7 @@ F test/collate5.test 7999fb3122386bae38acd8ccd61e0b7c5a30e289 F test/collate6.test 6c9470d1606ee3e564675b229653e320c49ec638 F test/conflict.test c5b849b01cfbe0a4f63a90cba6f68e2fe3a75f87 F test/corrupt.test 0080ddcece23e8ba47c44608c4fb73fd4d1d8ce2 -F test/crash.test 39d6ec8f6dcaa63ace67a28ab9423d4591af947d +F test/crash.test 637479504e137d065385c5b9379680d2b5372630 F test/crashtest1.c 09c1c7d728ccf4feb9e481671e29dda5669bbcc2 F test/cursor.test d7c65ea0fc4e321e12fbcf5c7f3e2211ef45379b F test/date.test dda578ec1857837156bd8b32f8e09d81d7d7881c @@ -134,7 +134,7 @@ F test/insert.test 56f9c20c9adc8d707490c4ffa5d4daa94826ea03 F test/insert2.test 0bb50ff999e35a21549d8ee5dc44db8ac24d31a7 F test/interrupt.test 0aa230f8aedec0ad7caaf5edaced337e4cfb3820 F test/intpkey.test b57cf5236fde1bd8cbc1388fa0c91908f6fd9194 -F test/ioerr.test 3ce897ee998ee874073f3b23b0396d9ff804759c +F test/ioerr.test 90ccd62d50fbbaa990ccd544720a7b9dd10becd3 F test/join.test ea8c77b9fbc377fe553cdb5ce5f1bd72021dca5d F test/join2.test c97e4c5aa65dea462145529e58212a709b4722b8 F test/join3.test 67dc0d7c8dab3fff25796d0f3c3fd9c999aeded3 @@ -263,7 +263,7 @@ F www/tclsqlite.tcl e73f8f8e5f20e8277619433f7970060ab01088fc F www/vdbe.tcl 095f106d93875c94b47367384ebc870517431618 F www/version3.tcl 092a01f5ef430d2c4acc0ae558d74c4bb89638a0 F www/whentouse.tcl c3b50d3ac31c54be2a1af9b488a89d22f1e6e746 -P 929745c1833e7f4323884a1bc0c632f5b319da35 -R dba9baec5eebc45c6979e9b7c2efd513 +P 7373a5d4cf2db921b33132c736ad62ab702d7cde +R 1374ed5b4e2bf48f719639e9351d8142 U danielk1977 -Z 07fbc4827e58bb688700c5382740a556 +Z 60af24b70074f0ad63b6e618315bdcee diff --git a/manifest.uuid b/manifest.uuid index b5d4f4541c..03b35d720d 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -7373a5d4cf2db921b33132c736ad62ab702d7cde \ No newline at end of file +5023b1dba2e61bb10d1b488874e3d3eea3973145 \ No newline at end of file diff --git a/test/all.test b/test/all.test index 19435161b9..c99808d291 100644 --- a/test/all.test +++ b/test/all.test @@ -10,7 +10,7 @@ #*********************************************************************** # This file runs all tests. # -# $Id: all.test,v 1.24 2005/01/07 10:42:48 danielk1977 Exp $ +# $Id: all.test,v 1.25 2005/01/08 02:35:44 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl @@ -50,13 +50,22 @@ set LeakList {} set EXCLUDE { all.test crash.test + autovacuum_crash.test quick.test malloc.test misuse.test memleak.test corrupt.test } -# btree2.test + +# Test files btree2.test and btree4.test don't work if the +# SQLITE_DEFAULT_AUTOVACUUM macro is defined to true (because they depend +# on tables being allocated starting at page 2). +# +ifcapable default_autovacuum { + lappend EXCLUDE btree2.test + lappend EXCLUDE btree4.test +} for {set Counter 0} {$Counter<$COUNT && $nErr==0} {incr Counter} { if {$Counter%2} { @@ -104,10 +113,14 @@ if {$LeakList!=""} { puts " Ok" } -# Run the crashtest only on unix and only once. +# Run the crashtest only on unix and only once. If the library does not +# always create auto-vacuum databases, also run autovacuum_crash.test. # if {$tcl_platform(platform)=="unix"} { source $testdir/crash.test + ifcapable !default_autovacuum { + source $testdir/autovacuum_crash.test + } } # Run the malloc tests and the misuse test after memory leak detection. diff --git a/test/crash.test b/test/crash.test index db01c88924..2373023531 100644 --- a/test/crash.test +++ b/test/crash.test @@ -20,7 +20,7 @@ # The special crash-test module with its os_test.c backend only works # on Unix. # -# $Id: crash.test,v 1.12 2004/11/23 22:16:40 drh Exp $ +# $Id: crash.test,v 1.13 2005/01/08 02:35:44 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl @@ -243,6 +243,10 @@ for {set i 1} {$i < $repeats} {incr i} { # crash-4.3.*: Test recovery when crash occurs during sync() of the master # journal file. # +set filesize 559 +ifcapable default_autovacuum { + set filesize 562 +} do_test crash-4.0 { file delete -force test2.db file delete -force test2.db-journal @@ -252,7 +256,7 @@ do_test crash-4.0 { CREATE TABLE aux.abc2 AS SELECT 2*a as a, 2*b as b, 2*c as c FROM abc; } expr [file size test2.db] / 1024 -} {559} +} $filesize for {set i 1} {$i<$repeats} {incr i} { set sig [signature] diff --git a/test/ioerr.test b/test/ioerr.test index 380de82bec..fe486bcfb8 100644 --- a/test/ioerr.test +++ b/test/ioerr.test @@ -15,13 +15,25 @@ # The tests in this file use special facilities that are only # available in the SQLite test fixture. # -# $Id: ioerr.test,v 1.6 2004/10/01 14:38:03 drh Exp $ +# $Id: ioerr.test,v 1.7 2005/01/08 02:35:44 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl set ::go 1 for {set n 1} {$go} {incr n} { + + # If SQLITE_DEFAULT_AUTOVACUUM is set to true, then a simulated IO error + # on the 8th IO operation in the SQL script below doesn't report an error. + # + # This is because the 8th IO call attempts to read page 2 of the database + # file when the file on disk is only 1 page. The pager layer detects that + # this has happened and suppresses the error returned by the OS layer. + # + ifcapable default_autovacuum { + if {$n==8} continue + } + do_test ioerr-1.$n.1 { set ::sqlite_io_error_pending 0 db close