Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(712)

Side by Side Diff: third_party/sqlite/src/test/capi2.test

Issue 901033002: Import SQLite 3.8.7.4. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Chromium changes to support SQLite 3.8.7.4. Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 # 2003 January 29 1 # 2003 January 29
2 # 2 #
3 # The author disclaims copyright to this source code. In place of 3 # The author disclaims copyright to this source code. In place of
4 # a legal notice, here is a blessing: 4 # a legal notice, here is a blessing:
5 # 5 #
6 # May you do good and not evil. 6 # May you do good and not evil.
7 # May you find forgiveness for yourself and forgive others. 7 # May you find forgiveness for yourself and forgive others.
8 # May you share freely, never taking more than you give. 8 # May you share freely, never taking more than you give.
9 # 9 #
10 #*********************************************************************** 10 #***********************************************************************
(...skipping 217 matching lines...) Expand 10 before | Expand all | Expand 10 after
228 [get_row_values $VM] \ 228 [get_row_values $VM] \
229 [get_column_names $VM] 229 [get_column_names $VM]
230 } {SQLITE_ERROR 0 {} {}} 230 } {SQLITE_ERROR 0 {} {}}
231 231
232 # Update for v3: Preparing a statement does not affect the change counter. 232 # Update for v3: Preparing a statement does not affect the change counter.
233 # (Test result changes from 0 to 1). (Later:) change counter updates occur 233 # (Test result changes from 0 to 1). (Later:) change counter updates occur
234 # when sqlite3_step returns, not at finalize time. 234 # when sqlite3_step returns, not at finalize time.
235 do_test capi2-3.13b {db changes} {0} 235 do_test capi2-3.13b {db changes} {0}
236 236
237 do_test capi2-3.14 { 237 do_test capi2-3.14 {
238 list [sqlite3_finalize $VM] [sqlite3_errmsg $DB] 238 list [sqlite3_finalize $VM] [sqlite3_errmsg $DB] \
239 } {SQLITE_CONSTRAINT {column a is not unique}} 239 [sqlite3_extended_errcode $DB]
240 } {SQLITE_CONSTRAINT {UNIQUE constraint failed: t1.a} SQLITE_CONSTRAINT_UNIQUE}
240 do_test capi2-3.15 { 241 do_test capi2-3.15 {
241 set VM [sqlite3_prepare $DB {CREATE TABLE t2(a NOT NULL, b)} -1 TAIL] 242 set VM [sqlite3_prepare $DB {CREATE TABLE t2(a NOT NULL, b)} -1 TAIL]
242 set TAIL 243 set TAIL
243 } {} 244 } {}
244 do_test capi2-3.16 { 245 do_test capi2-3.16 {
245 list [sqlite3_step $VM] \ 246 list [sqlite3_step $VM] \
246 [sqlite3_column_count $VM] \ 247 [sqlite3_column_count $VM] \
247 [get_row_values $VM] \ 248 [get_row_values $VM] \
248 [get_column_names $VM] 249 [get_column_names $VM]
249 } {SQLITE_DONE 0 {} {}} 250 } {SQLITE_DONE 0 {} {}}
250 do_test capi2-3.17 { 251 do_test capi2-3.17 {
251 list [sqlite3_finalize $VM] [sqlite3_errmsg $DB] 252 list [sqlite3_finalize $VM] [sqlite3_errmsg $DB]
252 } {SQLITE_OK {not an error}} 253 } {SQLITE_OK {not an error}}
253 do_test capi2-3.18 { 254 do_test capi2-3.18 {
254 set VM [sqlite3_prepare $DB {INSERT INTO t2 VALUES(NULL,2)} -1 TAIL] 255 set VM [sqlite3_prepare $DB {INSERT INTO t2 VALUES(NULL,2)} -1 TAIL]
255 list [sqlite3_step $VM] \ 256 list [sqlite3_step $VM] \
256 [sqlite3_column_count $VM] \ 257 [sqlite3_column_count $VM] \
257 [get_row_values $VM] \ 258 [get_row_values $VM] \
258 [get_column_names $VM] 259 [get_column_names $VM]
259 } {SQLITE_ERROR 0 {} {}} 260 } {SQLITE_ERROR 0 {} {}}
260 do_test capi2-3.19 { 261 do_test capi2-3.19 {
261 list [sqlite3_finalize $VM] [sqlite3_errmsg $DB] 262 list [sqlite3_finalize $VM] [sqlite3_errmsg $DB] \
262 } {SQLITE_CONSTRAINT {t2.a may not be NULL}} 263 [sqlite3_extended_errcode $DB]
264 } {SQLITE_CONSTRAINT {NOT NULL constraint failed: t2.a} SQLITE_CONSTRAINT_NOTNUL L}
263 265
264 do_test capi2-3.20 { 266 do_test capi2-3.20 {
265 execsql { 267 execsql {
266 CREATE TABLE a1(message_id, name , UNIQUE(message_id, name) ); 268 CREATE TABLE a1(message_id, name , UNIQUE(message_id, name) );
267 INSERT INTO a1 VALUES(1, 1); 269 INSERT INTO a1 VALUES(1, 1);
268 } 270 }
269 } {} 271 } {}
270 do_test capi2-3.21 { 272 do_test capi2-3.21 {
271 set VM [sqlite3_prepare $DB {INSERT INTO a1 VALUES(1, 1)} -1 TAIL] 273 set VM [sqlite3_prepare $DB {INSERT INTO a1 VALUES(1, 1)} -1 TAIL]
272 sqlite3_step $VM 274 sqlite3_step $VM
273 } {SQLITE_ERROR} 275 } {SQLITE_ERROR}
274 do_test capi2-3.22 { 276 do_test capi2-3.22 {
275 sqlite3_errcode $DB 277 sqlite3_errcode $DB
276 } {SQLITE_ERROR} 278 } {SQLITE_ERROR}
277 do_test capi2-3.23 { 279 do_test capi2-3.23 {
278 sqlite3_finalize $VM 280 sqlite3_finalize $VM
279 } {SQLITE_CONSTRAINT} 281 } {SQLITE_CONSTRAINT}
280 do_test capi2-3.24 { 282 do_test capi2-3.24 {
281 sqlite3_errcode $DB 283 list [sqlite3_errcode $DB] [sqlite3_extended_errcode $DB]
282 } {SQLITE_CONSTRAINT} 284 } {SQLITE_CONSTRAINT SQLITE_CONSTRAINT_UNIQUE}
283 285
284 # Two or more virtual machines exists at the same time. 286 # Two or more virtual machines exists at the same time.
285 # 287 #
286 do_test capi2-4.1 { 288 do_test capi2-4.1 {
287 set VM1 [sqlite3_prepare $DB {INSERT INTO t2 VALUES(1,2)} -1 TAIL] 289 set VM1 [sqlite3_prepare $DB {INSERT INTO t2 VALUES(1,2)} -1 TAIL]
288 set TAIL 290 set TAIL
289 } {} 291 } {}
290 do_test capi2-4.2 { 292 do_test capi2-4.2 {
291 set VM2 [sqlite3_prepare $DB {INSERT INTO t2 VALUES(2,3)} -1 TAIL] 293 set VM2 [sqlite3_prepare $DB {INSERT INTO t2 VALUES(2,3)} -1 TAIL]
292 set TAIL 294 set TAIL
(...skipping 253 matching lines...) Expand 10 before | Expand all | Expand 10 after
546 list [sqlite3_step $VM1] \ 548 list [sqlite3_step $VM1] \
547 [sqlite3_column_count $VM1] \ 549 [sqlite3_column_count $VM1] \
548 [get_row_values $VM1] \ 550 [get_row_values $VM1] \
549 [get_column_names $VM1] 551 [get_column_names $VM1]
550 } {SQLITE_ROW 1 12 {x counter}} 552 } {SQLITE_ROW 1 12 {x counter}}
551 do_test capi2-6.27 { 553 do_test capi2-6.27 {
552 catchsql { 554 catchsql {
553 INSERT INTO t1 VALUES(2,4,5); 555 INSERT INTO t1 VALUES(2,4,5);
554 SELECT * FROM t1; 556 SELECT * FROM t1;
555 } 557 }
556 } {1 {column a is not unique}} 558 } {1 {UNIQUE constraint failed: t1.a}}
557 do_test capi2-6.28 { 559 do_test capi2-6.28 {
558 list [sqlite3_step $VM1] \ 560 list [sqlite3_step $VM1] \
559 [sqlite3_column_count $VM1] \ 561 [sqlite3_column_count $VM1] \
560 [get_row_values $VM1] \ 562 [get_row_values $VM1] \
561 [get_column_names $VM1] 563 [get_column_names $VM1]
562 } {SQLITE_ROW 1 13 {x counter}} 564 } {SQLITE_ROW 1 13 {x counter}}
563 do_test capi2-6.99 { 565 do_test capi2-6.99 {
564 sqlite3_finalize $VM1 566 sqlite3_finalize $VM1
565 } {SQLITE_OK} 567 } {SQLITE_OK}
566 catchsql {ROLLBACK} 568 catchsql {ROLLBACK}
(...skipping 225 matching lines...) Expand 10 before | Expand all | Expand 10 after
792 do_test capi2-13.11 { 794 do_test capi2-13.11 {
793 check_origins {select * from (select * from tab1 limit 10 offset 10)} 795 check_origins {select * from (select * from tab1 limit 10 offset 10)}
794 } [list {main tab1 col1} {main tab1 col2}] 796 } [list {main tab1 col1} {main tab1 col2}]
795 } 797 }
796 798
797 799
798 } ;# ifcapable columnmetadata 800 } ;# ifcapable columnmetadata
799 801
800 db2 close 802 db2 close
801 finish_test 803 finish_test
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698