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

Side by Side Diff: third_party/sqlite/src/test/view.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 # 2002 February 26 1 # 2002 February 26
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 440 matching lines...) Expand 10 before | Expand all | Expand 10 after
451 # Ticket #1270: Do not allow parameters in view definitions. 451 # Ticket #1270: Do not allow parameters in view definitions.
452 # 452 #
453 do_test view-12.1 { 453 do_test view-12.1 {
454 catchsql { 454 catchsql {
455 CREATE VIEW v12 AS SELECT a FROM t1 WHERE b=? 455 CREATE VIEW v12 AS SELECT a FROM t1 WHERE b=?
456 } 456 }
457 } {1 {parameters are not allowed in views}} 457 } {1 {parameters are not allowed in views}}
458 458
459 ifcapable attach { 459 ifcapable attach {
460 do_test view-13.1 { 460 do_test view-13.1 {
461 file delete -force test2.db 461 forcedelete test2.db
462 catchsql { 462 catchsql {
463 ATTACH 'test2.db' AS two; 463 ATTACH 'test2.db' AS two;
464 CREATE TABLE two.t2(x,y); 464 CREATE TABLE two.t2(x,y);
465 CREATE VIEW v13 AS SELECT y FROM two.t2; 465 CREATE VIEW v13 AS SELECT y FROM two.t2;
466 } 466 }
467 } {1 {view v13 cannot reference objects in database two}} 467 } {1 {view v13 cannot reference objects in database two}}
468 } 468 }
469 469
470 # Ticket #1658 470 # Ticket #1658
471 # 471 #
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
569 # Ticket #3539 had this crashing (see commit [5940]). 569 # Ticket #3539 had this crashing (see commit [5940]).
570 do_test view-20.1 { 570 do_test view-20.1 {
571 execsql { 571 execsql {
572 DROP TABLE IF EXISTS t1; 572 DROP TABLE IF EXISTS t1;
573 DROP VIEW IF EXISTS v1; 573 DROP VIEW IF EXISTS v1;
574 CREATE TABLE t1(c1); 574 CREATE TABLE t1(c1);
575 CREATE VIEW v1 AS SELECT c1 FROM (SELECT t1.c1 FROM t1); 575 CREATE VIEW v1 AS SELECT c1 FROM (SELECT t1.c1 FROM t1);
576 } 576 }
577 } {} 577 } {}
578 578
579 # Ticket [d58ccbb3f1b]: Prevent Table.nRef overflow.
580 db close
581 sqlite3 db :memory:
582 do_test view-21.1 {
583 catchsql {
584 CREATE TABLE t1(x);
585 INSERT INTO t1 VALUES(5);
586 CREATE VIEW v1 AS SELECT x*2 FROM t1;
587 CREATE VIEW v2 AS SELECT * FROM v1 UNION SELECT * FROM v1;
588 CREATE VIEW v4 AS SELECT * FROM v2 UNION SELECT * FROM v2;
589 CREATE VIEW v8 AS SELECT * FROM v4 UNION SELECT * FROM v4;
590 CREATE VIEW v16 AS SELECT * FROM v8 UNION SELECT * FROM v8;
591 CREATE VIEW v32 AS SELECT * FROM v16 UNION SELECT * FROM v16;
592 CREATE VIEW v64 AS SELECT * FROM v32 UNION SELECT * FROM v32;
593 CREATE VIEW v128 AS SELECT * FROM v64 UNION SELECT * FROM v64;
594 CREATE VIEW v256 AS SELECT * FROM v128 UNION SELECT * FROM v128;
595 CREATE VIEW v512 AS SELECT * FROM v256 UNION SELECT * FROM v256;
596 CREATE VIEW v1024 AS SELECT * FROM v512 UNION SELECT * FROM v512;
597 CREATE VIEW v2048 AS SELECT * FROM v1024 UNION SELECT * FROM v1024;
598 CREATE VIEW v4096 AS SELECT * FROM v2048 UNION SELECT * FROM v2048;
599 CREATE VIEW v8192 AS SELECT * FROM v4096 UNION SELECT * FROM v4096;
600 CREATE VIEW v16384 AS SELECT * FROM v8192 UNION SELECT * FROM v8192;
601 CREATE VIEW v32768 AS SELECT * FROM v16384 UNION SELECT * FROM v16384;
602 CREATE VIEW vx AS SELECT * FROM v32768 UNION SELECT * FROM v32768;
603 }
604 } {1 {too many references to "v1": max 65535}}
605 ifcapable progress {
606 do_test view-21.2 {
607 db progress 1000 {expr 1}
608 catchsql {
609 SELECT * FROM v32768;
610 }
611 } {1 interrupted}
612 }
613
614 db close
615 sqlite3 db :memory:
616 do_execsql_test view-22.1 {
617 CREATE VIEW x1 AS SELECT 123 AS '', 234 AS '', 345 AS '';
618 SELECT * FROM x1;
619 } {123 234 345}
620 do_test view-22.2 {
621 unset -nocomplain x
622 db eval {SELECT * FROM x1} x break
623 lsort [array names x]
624 } {{} * :1 :2}
625
626
579 finish_test 627 finish_test
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698