xref: /sqlite-3.40.0/ext/session/sessionbig.test (revision 7379b455)
14df68e0aSdan# 2014 August 16
24df68e0aSdan#
34df68e0aSdan# The author disclaims copyright to this source code.  In place of
44df68e0aSdan# a legal notice, here is a blessing:
54df68e0aSdan#
64df68e0aSdan#    May you do good and not evil.
74df68e0aSdan#    May you find forgiveness for yourself and forgive others.
84df68e0aSdan#    May you share freely, never taking more than you give.
94df68e0aSdan#
104df68e0aSdan#***********************************************************************
114df68e0aSdan#
124df68e0aSdan# This file implements regression tests for sessions SQLite extension.
134df68e0aSdan# Specifically, this file contains tests for "patchset" changes.
144df68e0aSdan#
154df68e0aSdan
164df68e0aSdanif {![info exists testdir]} {
174df68e0aSdan  set testdir [file join [file dirname [info script]] .. .. test]
184df68e0aSdan}
194df68e0aSdansource [file join [file dirname [info script]] session_common.tcl]
204df68e0aSdansource $testdir/tester.tcl
214df68e0aSdanifcapable !session {finish_test; return}
224df68e0aSdan
23137b8ebbSdanif {[permutation]=="session_strm" || [permutation]=="session_eec"} {
24137b8ebbSdan  finish_test
25137b8ebbSdan  return
26137b8ebbSdan}
27137b8ebbSdan
28*7379b455Sdanif {$::tcl_platform(pointerSize)<8} {
29*7379b455Sdan  finish_test
30*7379b455Sdan  return
31*7379b455Sdan}
32*7379b455Sdan
334df68e0aSdanset testprefix sessionbig
344df68e0aSdan
354df68e0aSdanforcedelete test.db2
364df68e0aSdansqlite3 db2 test.db2
374df68e0aSdan
384df68e0aSdando_execsql_test 1.0 {
394df68e0aSdan  CREATE TABLE t1(a INTEGER PRIMARY KEY, b);
404df68e0aSdan}
414df68e0aSdando_execsql_test -db db2 1.1 {
424df68e0aSdan  CREATE TABLE t1(a INTEGER PRIMARY KEY, b);
434df68e0aSdan}
444df68e0aSdan
454df68e0aSdando_test 1.2 {
464df68e0aSdan  do_then_apply_sql {
474df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
484df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
494df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
504df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
514df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
524df68e0aSdan
534df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
544df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
554df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
564df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
574df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
584df68e0aSdan
594df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
604df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
614df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
624df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
634df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
644df68e0aSdan  }
654df68e0aSdan} {}
664df68e0aSdan
674df68e0aSdando_test 1.3 {
684df68e0aSdan  execsql { DELETE FROM t1 }
694df68e0aSdan  execsql2 { DELETE FROM t1 }
704df68e0aSdan} {}
714df68e0aSdan
724df68e0aSdando_test 1.4 {
734df68e0aSdan  set rc [catch {
744df68e0aSdan  do_then_apply_sql {
754df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
764df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
774df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
784df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
794df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
804df68e0aSdan
814df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
824df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
834df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
844df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
854df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
864df68e0aSdan
874df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
884df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
894df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
904df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
914df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
924df68e0aSdan
934df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
944df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
954df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
964df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
974df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
984df68e0aSdan
994df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
1004df68e0aSdan    INSERT INTO t1(b) VALUES( zeroblob(100*1000*1000) );
1014df68e0aSdan  }
1024df68e0aSdan  } msg]
1034df68e0aSdan  list $rc $msg
1044df68e0aSdan} {1 SQLITE_NOMEM}
1054df68e0aSdan
1064df68e0aSdan
1074df68e0aSdanfinish_test
1084df68e0aSdan
109