Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fix some test scripts so that they work with a minimal build configuration. (CVS 2241) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
d267fb3ca3f31ee138c9613cb84e873e |
User & Date: | danielk1977 2005-01-20 02:17:02.000 |
Context
2005-01-20
| ||
05:24 | Changes so that crash.test works when SQLITE_OMIT_PAGER_PRAGMAS is defined. (CVS 2242) (check-in: f0add0a60e user: danielk1977 tags: trunk) | |
02:17 | Fix some test scripts so that they work with a minimal build configuration. (CVS 2241) (check-in: d267fb3ca3 user: danielk1977 tags: trunk) | |
02:14 | Turn SQLITE_OMIT_CURSOR on by default. (CVS 2240) (check-in: 2d3ab1ab5a user: drh tags: trunk) | |
Changes
Changes to test/bind.test.
1 2 3 4 5 6 7 8 9 10 11 12 13 | # 2003 September 6 # # 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 implements regression tests for SQLite library. The # focus of this script testing the sqlite_bind API. # | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # 2003 September 6 # # 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 implements regression tests for SQLite library. The # focus of this script testing the sqlite_bind API. # # $Id: bind.test,v 1.27 2005/01/20 02:17:02 danielk1977 Exp $ # set testdir [file dirname $argv0] source $testdir/tester.tcl proc sqlite_step {stmt N VALS COLS} { upvar VALS vals |
︙ | ︙ | |||
490 491 492 493 494 495 496 | do_test bind-10.16 { sqlite3_bind_parameter_name $VM 5 } :pqr catch {sqlite3_finalize $VM} # Make sure we catch an unterminated "(" in a Tcl-style variable name # | > | | | | > | 490 491 492 493 494 495 496 497 498 499 500 501 502 503 | do_test bind-10.16 { sqlite3_bind_parameter_name $VM 5 } :pqr catch {sqlite3_finalize $VM} # Make sure we catch an unterminated "(" in a Tcl-style variable name # ifcapable tclvar { do_test bind-11.1 { catchsql {SELECT * FROM sqlite_master WHERE name=$abc(123 and sql NOT NULL;} } {1 {unrecognized token: "$abc(123"}} } finish_test |
Changes to test/corrupt.test.
︙ | ︙ | |||
9 10 11 12 13 14 15 | # #*********************************************************************** # This file implements regression tests for SQLite library. # # This file implements tests to make sure SQLite does not crash or # segfault if it sees a corrupt database file. # | | | 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | # #*********************************************************************** # This file implements regression tests for SQLite library. # # This file implements tests to make sure SQLite does not crash or # segfault if it sees a corrupt database file. # # $Id: corrupt.test,v 1.4 2005/01/20 02:17:02 danielk1977 Exp $ catch {file delete -force test.db} catch {file delete -force test.db-journal} set testdir [file dirname $argv0] source $testdir/tester.tcl |
︙ | ︙ | |||
39 40 41 42 43 44 45 | INSERT INTO t1 SELECT x || randstr(5,10) FROM t1; INSERT INTO t1 SELECT x || randstr(5,10) FROM t1; INSERT INTO t1 SELECT x || randstr(5,10) FROM t1; CREATE INDEX t1i1 ON t1(x); CREATE TABLE t2 AS SELECT * FROM t1; DELETE FROM t2 WHERE rowid%5!=0; COMMIT; | < | > | 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | INSERT INTO t1 SELECT x || randstr(5,10) FROM t1; INSERT INTO t1 SELECT x || randstr(5,10) FROM t1; INSERT INTO t1 SELECT x || randstr(5,10) FROM t1; CREATE INDEX t1i1 ON t1(x); CREATE TABLE t2 AS SELECT * FROM t1; DELETE FROM t2 WHERE rowid%5!=0; COMMIT; } } {} integrity_check corrupt-1.2 # Copy file $from into $to # proc copy_file {from to} { set f [open $from] fconfigure $f -translation binary set t [open $to w] |
︙ | ︙ |
Changes to test/func.test.
1 2 3 4 5 6 7 8 9 10 11 12 13 | # 2001 September 15 # # 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 implements regression tests for SQLite library. The # focus of this file is testing built-in functions. # | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # 2001 September 15 # # 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 implements regression tests for SQLite library. The # focus of this file is testing built-in functions. # # $Id: func.test,v 1.32 2005/01/20 02:17:02 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl # Create a table to work with. # do_test func-0.0 { |
︙ | ︙ | |||
244 245 246 247 248 249 250 | do_test func-7.1 { execsql {SELECT last_insert_rowid()} } [db last_insert_rowid] # Tests for aggregate functions and how they handle NULLs. # do_test func-8.1 { | > | > | 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 | do_test func-7.1 { execsql {SELECT last_insert_rowid()} } [db last_insert_rowid] # Tests for aggregate functions and how they handle NULLs. # do_test func-8.1 { ifcapable explain { execsql {EXPLAIN SELECT sum(a) FROM t2;} } execsql { SELECT sum(a), count(a), round(avg(a),2), min(a), max(a), count(*) FROM t2; } } {68236.0 3 22745.33 1 67890 5} do_test func-8.2 { execsql { SELECT max('z+'||a||'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOP') FROM t2; |
︙ | ︙ |
Changes to test/index2.test.
1 2 3 4 5 6 7 8 9 10 11 12 13 | # 2005 January 11 # # 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 implements regression tests for SQLite library. The # focus of this file is testing the CREATE INDEX statement. # | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # 2005 January 11 # # 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 implements regression tests for SQLite library. The # focus of this file is testing the CREATE INDEX statement. # # $Id: index2.test,v 1.2 2005/01/20 02:17:02 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl # Create a table with a large number of columns # do_test index2-1.1 { |
︙ | ︙ | |||
61 62 63 64 65 66 67 | for {set i 1} {$i<1000} {incr i} { append sql c$i, } append sql c1000) execsql $sql } {} do_test index2-2.2 { | > | > | 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | for {set i 1} {$i<1000} {incr i} { append sql c$i, } append sql c1000) execsql $sql } {} do_test index2-2.2 { ifcapable explain { execsql {EXPLAIN SELECT c9 FROM t1 ORDER BY c1, c2, c3, c4, c5} } execsql {SELECT c9 FROM t1 ORDER BY c1, c2, c3, c4, c5, c6 LIMIT 5} } {9 10009 20009 30009 40009} finish_test |
Changes to test/limit.test.
︙ | ︙ | |||
8 9 10 11 12 13 14 | # May you share freely, never taking more than you give. # #*********************************************************************** # This file implements regression tests for SQLite library. The # focus of this file is testing the LIMIT ... OFFSET ... clause # of SELECT statements. # | | | 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | # May you share freely, never taking more than you give. # #*********************************************************************** # This file implements regression tests for SQLite library. The # focus of this file is testing the LIMIT ... OFFSET ... clause # of SELECT statements. # # $Id: limit.test,v 1.21 2005/01/20 02:17:02 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl # Build some test data # execsql { |
︙ | ︙ | |||
327 328 329 330 331 332 333 | } {1 2 3} do_test limit-9.2 { execsql { CREATE TABLE t7 AS SELECT * FROM t6; SELECT * FROM (SELECT * FROM t7 LIMIT 3); } } {1 2 3} | > | | | | | | | | | | | | | | | | | | | | | | | | | > | 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 | } {1 2 3} do_test limit-9.2 { execsql { CREATE TABLE t7 AS SELECT * FROM t6; SELECT * FROM (SELECT * FROM t7 LIMIT 3); } } {1 2 3} ifcapable compound { do_test limit-9.3 { execsql { SELECT * FROM (SELECT * FROM t6 LIMIT 3) UNION SELECT * FROM (SELECT * FROM t7 LIMIT 3) ORDER BY 1 } } {1 2 3} do_test limit-9.4 { execsql { SELECT * FROM (SELECT * FROM t6 LIMIT 3) UNION SELECT * FROM (SELECT * FROM t7 LIMIT 3) ORDER BY 1 LIMIT 2 } } {1 2} do_test limit-9.5 { catchsql { SELECT * FROM t6 LIMIT 3 UNION SELECT * FROM t7 LIMIT 3 } } {1 {LIMIT clause should come after UNION not before}} } finish_test |
Changes to test/misc2.test.
︙ | ︙ | |||
9 10 11 12 13 14 15 | # #*********************************************************************** # This file implements regression tests for SQLite library. # # This file implements tests for miscellanous features that were # left out of other test files. # | | | 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | # #*********************************************************************** # This file implements regression tests for SQLite library. # # This file implements tests for miscellanous features that were # left out of other test files. # # $Id: misc2.test,v 1.19 2005/01/20 02:17:02 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl ifcapable {trigger} { # Test for ticket #360 # |
︙ | ︙ | |||
162 163 164 165 166 167 168 | set rc [catch { db eval {SELECT rowid FROM t1} {} { db eval "INSERT INTO t1 VALUES(3)" } } msg] lappend rc $msg } {1 {database table is locked}} | > | < < | | | | | | | | | | | | | | | | | | | | > > > > > | 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 | set rc [catch { db eval {SELECT rowid FROM t1} {} { db eval "INSERT INTO t1 VALUES(3)" } } msg] lappend rc $msg } {1 {database table is locked}} ifcapable memorydb { do_test misc2-7.3 { sqlite3 db :memory: execsql { CREATE TABLE t1(x); INSERT INTO t1 VALUES(1); } set rc [catch { db eval {SELECT rowid FROM t1} {} { db eval "DELETE FROM t1 WHERE rowid=$rowid" } } msg] lappend rc $msg } {1 {database table is locked}} do_test misc2-7.4 { set rc [catch { db eval {SELECT rowid FROM t1} {} { db eval "INSERT INTO t1 VALUES(3)" } } msg] lappend rc $msg } {1 {database table is locked}} } db close file delete -force test.db sqlite3 db test.db # Ticket #453. If the SQL ended with "-", the tokenizer was calling that # an incomplete token, which caused problem. The solution was to just call # it a minus sign. # do_test misc2-8.1 { catchsql {-} |
︙ | ︙ |
Changes to test/misc4.test.
︙ | ︙ | |||
9 10 11 12 13 14 15 | # #*********************************************************************** # This file implements regression tests for SQLite library. # # This file implements tests for miscellanous features that were # left out of other test files. # | | | 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | # #*********************************************************************** # This file implements regression tests for SQLite library. # # This file implements tests for miscellanous features that were # left out of other test files. # # $Id: misc4.test,v 1.12 2005/01/20 02:17:02 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl # Prepare a statement that will create a temporary table. Then do # a rollback. Then try to execute the prepared statement. # |
︙ | ︙ | |||
118 119 120 121 122 123 124 | where a.key=x.key; } } {01 data01 01 3.0 +1 data+1 +1 7.0} # Ticket #1036. When creating tables from a SELECT on a view, use the # short names of columns. # | > | | | | | | | | | | | | | | | | | | | | > | 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 | where a.key=x.key; } } {01 data01 01 3.0 +1 data+1 +1 7.0} # Ticket #1036. When creating tables from a SELECT on a view, use the # short names of columns. # ifcapable view { do_test misc4-5.1 { execsql { create table t4(a,b); create table t5(a,c); insert into t4 values (1,2); insert into t5 values (1,3); create view myview as select t4.a a from t4 inner join t5 on t4.a=t5.a; create table problem as select * from myview; } execsql2 { select * FROM problem; } } {a 1} do_test misc4-5.2 { execsql2 { create table t6 as select * from t4, t5; select * from t6; } } {a 1 b 2 a:1 1 c 3} } finish_test |
Changes to test/pager.test.
1 2 3 4 5 6 7 8 9 10 11 12 13 | # 2001 September 15 # # 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 implements regression tests for SQLite library. The # focus of this script is page cache subsystem. # | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # 2001 September 15 # # 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 implements regression tests for SQLite library. The # focus of this script is page cache subsystem. # # $Id: pager.test,v 1.22 2005/01/20 02:17:02 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl if {[info commands pager_open]!=""} { db close |
︙ | ︙ | |||
399 400 401 402 403 404 405 | # Test that nothing bad happens when sqlite3pager_set_cachesize() is # called with a negative argument. do_test pager-4.6.1 { pager_close [pager_open ptf2.db -15] } {} # Test truncate on an in-memory database is Ok. | > | | | | | | | | | | | | | | | | > | 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 | # Test that nothing bad happens when sqlite3pager_set_cachesize() is # called with a negative argument. do_test pager-4.6.1 { pager_close [pager_open ptf2.db -15] } {} # Test truncate on an in-memory database is Ok. ifcapable memorydb { do_test pager-4.6.2 { set ::p2 [pager_open :memory: 10] pager_truncate $::p2 5 } {} do_test pager-4.6.3 { for {set i 1} {$i<5} {incr i} { set p [page_get $::p2 $i] page_write $p "Page $i" page_unref $p pager_commit $::p2 } pager_truncate $::p2 3 } {} do_test pager-4.6.4 { pager_close $::p2 } {} } do_test pager-4.99 { pager_close $::p1 } {} |
︙ | ︙ |
Changes to test/progress.test.
1 2 3 4 5 6 7 8 9 10 11 12 13 | # 2001 September 15 # # 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 implements regression tests for SQLite library. The # focus of this file is testing the 'progress callback'. # | | > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | # 2001 September 15 # # 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 implements regression tests for SQLite library. The # focus of this file is testing the 'progress callback'. # # $Id: progress.test,v 1.5 2005/01/20 02:17:02 danielk1977 Exp $ set testdir [file dirname $argv0] source $testdir/tester.tcl # If the progress callback is not available in this build, skip this # whole file. ifcapable !progress { finish_test return } # Build some test data # execsql { BEGIN; CREATE TABLE t1(a); INSERT INTO t1 VALUES(1); |
︙ | ︙ |