1: # 2005 December 29
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: # This file implements regression tests for SQLite library.
12: #
13: # This file implements tests to verify that the new serial_type
14: # values of 8 (integer 0) and 9 (integer 1) work correctly.
15: #
16:
17: set testdir [file dirname $argv0]
18: source $testdir/tester.tcl
19:
20: db eval {PRAGMA legacy_file_format=OFF}
21:
22: # The size of the database depends on whether or not autovacuum
23: # is enabled.
24: #
25: ifcapable autovacuum {
26: if {[db one {PRAGMA auto_vacuum}]} {
27: set small 3072
28: set large 5120
29: } else {
30: set small 2048
31: set large 4096
32: }
33: } else {
34: set small 2048
35: set large 4096
36: }
37:
38: do_test format4-1.1 {
39: execsql {
40: CREATE TABLE t1(x0,x1,x2,x3,x4,x5,x6,x7,x8,x9);
41: INSERT INTO t1 VALUES(0,0,0,0,0,0,0,0,0,0);
42: INSERT INTO t1 SELECT * FROM t1;
43: INSERT INTO t1 SELECT * FROM t1;
44: INSERT INTO t1 SELECT * FROM t1;
45: INSERT INTO t1 SELECT * FROM t1;
46: INSERT INTO t1 SELECT * FROM t1;
47: INSERT INTO t1 SELECT * FROM t1;
48: }
49: file size test.db
50: } $small
51: do_test format4-1.2 {
52: execsql {
53: UPDATE t1 SET x0=1, x1=1, x2=1, x3=1, x4=1, x5=1, x6=1, x7=1, x8=1, x9=1
54: }
55: file size test.db
56: } $small
57: do_test format4-1.3 {
58: execsql {
59: UPDATE t1 SET x0=2, x1=2, x2=2, x3=2, x4=2, x5=2, x6=2, x7=2, x8=2, x9=2
60: }
61: file size test.db
62: } $large
63:
64:
65: finish_test
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>