Annotation of embedaddon/sqlite3/test/incrblobfault.test, revision 1.1
1.1 ! misho 1: # 2010 October 26
! 2: #
! 3: # The author disclaims copyright to this source code. In place of
! 4: # a legal notice, here is a blessing:
! 5: #
! 6: # May you do good and not evil.
! 7: # May you find forgiveness for yourself and forgive others.
! 8: # May you share freely, never taking more than you give.
! 9: #
! 10: #***********************************************************************
! 11: #
! 12: #
! 13:
! 14: set testdir [file dirname $argv0]
! 15: source $testdir/tester.tcl
! 16:
! 17: set testprefix incrblobfault
! 18:
! 19: do_execsql_test 1.0 {
! 20: CREATE TABLE blob(x INTEGER PRIMARY KEY, v BLOB);
! 21: INSERT INTO blob VALUES(1, 'hello world');
! 22: INSERT INTO blob VALUES(2, 'world hello');
! 23: INSERT INTO blob SELECT NULL, v FROM blob;
! 24: INSERT INTO blob SELECT NULL, v FROM blob;
! 25: INSERT INTO blob SELECT NULL, v FROM blob;
! 26: INSERT INTO blob SELECT NULL, v FROM blob;
! 27: INSERT INTO blob SELECT NULL, v FROM blob;
! 28: INSERT INTO blob SELECT NULL, v FROM blob;
! 29: INSERT INTO blob SELECT NULL, v FROM blob;
! 30: INSERT INTO blob SELECT NULL, v FROM blob;
! 31: INSERT INTO blob SELECT NULL, v FROM blob;
! 32: INSERT INTO blob SELECT NULL, v FROM blob;
! 33: }
! 34:
! 35: do_faultsim_test 1 -prep {
! 36: sqlite3 db test.db
! 37: set ::blob [db incrblob blob v 1]
! 38: } -body {
! 39: if {[catch {sqlite3_blob_reopen $::blob 1000}]} {
! 40: error [sqlite3_errmsg db]
! 41: }
! 42: } -test {
! 43: faultsim_test_result {0 {}}
! 44: close $::blob
! 45: }
! 46:
! 47: do_faultsim_test 2 -prep {
! 48: sqlite3 db test.db
! 49: set ::blob [db incrblob blob v 1]
! 50: } -body {
! 51: if {[catch {sqlite3_blob_reopen $::blob -1}]} {
! 52: error [sqlite3_errmsg db]
! 53: }
! 54: } -test {
! 55: faultsim_test_result {1 {no such rowid: -1}}
! 56: close $::blob
! 57: }
! 58:
! 59: do_faultsim_test 3 -prep {
! 60: sqlite3 db test.db
! 61: } -body {
! 62: set ::blob [db incrblob blob v 1]
! 63: gets $::blob
! 64: } -test {
! 65: faultsim_test_result {0 {hello world}}
! 66: catch { close $::blob }
! 67: }
! 68:
! 69: finish_test
! 70:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>