Have "PRAGMA quick_check" compare the number of entries in tables and indexes.
[sqlite.git] / ext / intck / intckfault.test
blob5c383681ac661263fc06f9bad497508577d18d24
1 # 2024 February 24
3 # The author disclaims copyright to this source code.  In place of
4 # a legal notice, here is a blessing:
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.
10 #***********************************************************************
13 source [file join [file dirname [info script]] intck_common.tcl]
14 set testprefix intckfault
18 do_execsql_test 1.0 {
19   CREATE TABLE t1(a INTEGER PRIMARY KEY, b, c);
20   INSERT INTO t1 VALUES(1, 2, 3);
21   INSERT INTO t1 VALUES(2, 'two', 'three');
22   INSERT INTO t1 VALUES(3, NULL, NULL);
23   CREATE INDEX i1 ON t1(b, c);
26 do_faultsim_test 1 -faults oom-t* -prep {
27 } -body {
28   set ::ic [sqlite3_intck db main]
29   set nStep 0
30   while {"SQLITE_OK"==[$::ic step]} {
31     incr nStep
32     if {$nStep==3} { $::ic unlock }
33   }
34   set res [$::ic error]
35   $::ic close
36   set res
37 } -test {
38   catch { $::ic close }
39 puts $testresult
40 puts $testnfail
41   faultsim_test_result {0 {SQLITE_OK {}}} {0 {SQLITE_NOMEM {}}} {0 {SQLITE_NOMEM {out of memory}}}
44 finish_test