Check in the file autovacuum_crash.test that should be part of the previous check-in. (CVS 2078)

FossilOrigin-Name: 9d7cd1f732ba6f9d69fc30100a4608b74f212b76
This commit is contained in:
danielk1977
2004-11-08 09:51:09 +00:00
parent 94daf7fdff
commit e0830e8e03
4 changed files with 73 additions and 9 deletions
+50
View File
@@ -0,0 +1,50 @@
# 2001 September 15
#
# The author disclaims copyright to this source code. In place of
# a legal notice, here is a blessing:
#
# 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 the tests in the file crash.test with auto-vacuum enabled
# databases.
#
# $Id: autovacuum_crash.test,v 1.1 2004/11/08 09:51:09 danielk1977 Exp $
set testdir [file dirname $argv0]
source $testdir/tester.tcl
rename finish_test really_finish_test2
proc finish_test {} {}
set ISQUICK 1
rename sqlite3 real_sqlite3
proc sqlite3 {args} {
set r [eval "real_sqlite3 $args"]
if { [llength $args] == 2 } {
[lindex $args 0] eval {pragma auto_vacuum = 1}
}
set r
}
rename do_test really_do_test
proc do_test {args} {
set sc [concat really_do_test "autovacuum-[lindex $args 0]" \
[lrange $args 1 end]]
eval $sc
}
source $testdir/crash.test
rename sqlite3 ""
rename real_sqlite3 sqlite3
rename finish_test ""
rename really_finish_test2 finish_test
rename do_test ""
rename really_do_test do_test
finish_test
+15 -2
View File
@@ -20,7 +20,7 @@
# The special crash-test module with its os_test.c backend only works
# on Unix.
#
# $Id: crash.test,v 1.10 2004/11/08 09:26:10 danielk1977 Exp $
# $Id: crash.test,v 1.11 2004/11/08 09:51:09 danielk1977 Exp $
set testdir [file dirname $argv0]
source $testdir/tester.tcl
@@ -388,5 +388,18 @@ do_test crash-5.5 {
signature
} $sig
#--------------------------------------------------------------------------
# The following test cases - crash-6.* - test that a DROP TABLE operation
# is correctly rolled back in the event of a crash while the database file
# is being written. This is mainly to test that all pages are written to the
# journal file before truncation in an auto-vacuum database.
#
do_test crash-6.1 {
crashsql 1 test.db {
DROP TABLE abc;
}
} {1 {child process exited abnormally}}
do_test crash-6.2 {
signature
} $sig