diff options
Diffstat (limited to 'chromium/third_party/sqlite/sqlite-src-3240000/ext/rbu/rbu6.test')
-rw-r--r-- | chromium/third_party/sqlite/sqlite-src-3240000/ext/rbu/rbu6.test | 103 |
1 files changed, 0 insertions, 103 deletions
diff --git a/chromium/third_party/sqlite/sqlite-src-3240000/ext/rbu/rbu6.test b/chromium/third_party/sqlite/sqlite-src-3240000/ext/rbu/rbu6.test deleted file mode 100644 index f05721574ad..00000000000 --- a/chromium/third_party/sqlite/sqlite-src-3240000/ext/rbu/rbu6.test +++ /dev/null @@ -1,103 +0,0 @@ -# 2014 October 21 -# -# 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 contains tests for the RBU module. Specifically, it tests the -# outcome of some other client writing to the database while an RBU update -# is being applied. - -if {![info exists testdir]} { - set testdir [file join [file dirname [info script]] .. .. test] -} -source $testdir/tester.tcl -set ::testprefix rbu6 - -proc setup_test {} { - reset_db - execsql { - CREATE TABLE t1(a INTEGER PRIMARY KEY, b UNIQUE); - CREATE TABLE t2(a INTEGER PRIMARY KEY, b UNIQUE); - CREATE TABLE t3(a INTEGER PRIMARY KEY, b UNIQUE); - } - db close - - forcedelete rbu.db - sqlite3 rbu rbu.db - rbu eval { - CREATE TABLE data_t1(a, b, rbu_control); - CREATE TABLE data_t2(a, b, rbu_control); - CREATE TABLE data_t3(a, b, rbu_control); - INSERT INTO data_t1 VALUES(1, 't1', 0); - INSERT INTO data_t2 VALUES(2, 't2', 0); - INSERT INTO data_t3 VALUES(3, 't3', 0); - } - rbu close -} - -# Test the outcome of some other client writing the db while the *-oal -# file is being generated. Once this has happened, the update cannot be -# progressed. -# -for {set nStep 1} {$nStep < 8} {incr nStep} { - do_test 1.$nStep.1 { - setup_test - sqlite3rbu rbu test.db rbu.db - for {set i 0} {$i<$nStep} {incr i} {rbu step} - - rbu close - sqlite3 db test.db - execsql { INSERT INTO t1 VALUES(5, 'hello') } - sqlite3rbu rbu test.db rbu.db - rbu step - } {SQLITE_BUSY} - do_test 1.$nStep.2 { - rbu step - } {SQLITE_BUSY} - do_test 1.$nStep.3 { - list [file exists test.db-oal] [file exists test.db-wal] - } {1 0} - do_test 1.$nStep.4 { - list [catch { rbu close } msg] $msg - } {1 {SQLITE_BUSY - database modified during rbu update}} -} - -# Test the outcome of some other client writing the db after the *-oal -# file has been copied to the *-wal path. Once this has happened, any -# other client writing to the db causes RBU to consider its job finished. -# -for {set nStep 8} {$nStep < 20} {incr nStep} { - do_test 1.$nStep.1 { - setup_test - sqlite3rbu rbu test.db rbu.db - for {set i 0} {$i<$nStep} {incr i} {rbu step} - rbu close - sqlite3 db test.db - execsql { INSERT INTO t1 VALUES(5, 'hello') } - sqlite3rbu rbu test.db rbu.db - rbu step - } {SQLITE_DONE} - do_test 1.$nStep.2 { - rbu step - } {SQLITE_DONE} - do_test 1.$nStep.3 { - file exists test.db-oal - } {0} - do_test 1.$nStep.4 { - list [catch { rbu close } msg] $msg - } {0 SQLITE_DONE} - - do_execsql_test 1.$nStep.5 { - SELECT * FROM t1; - } {1 t1 5 hello} -} - - -finish_test - |