diff options
| author | bernard <[email protected]> | 2017-11-02 13:50:42 +0800 |
|---|---|---|
| committer | bernard <[email protected]> | 2017-11-02 13:50:42 +0800 |
| commit | b2057f506a09e2adef81fc77efd697d16ae14bec (patch) | |
| tree | 3affefabfe376a0ec1b3ac4a5eef957c1dd58dc8 /components/external/SQLite-3.8.1/test/e_dropview.test | |
| parent | 23582c8129228b4961ad35319cfd2d270039345f (diff) | |
[External] Remove external from RT-Thread
Diffstat (limited to 'components/external/SQLite-3.8.1/test/e_dropview.test')
| -rw-r--r-- | components/external/SQLite-3.8.1/test/e_dropview.test | 192 |
1 files changed, 0 insertions, 192 deletions
diff --git a/components/external/SQLite-3.8.1/test/e_dropview.test b/components/external/SQLite-3.8.1/test/e_dropview.test deleted file mode 100644 index 143dce2907..0000000000 --- a/components/external/SQLite-3.8.1/test/e_dropview.test +++ /dev/null @@ -1,192 +0,0 @@ -# 2010 November 30 -# -# 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 tests to verify that the "testable statements" in -# the lang_dropview.html document are correct. -# - -set testdir [file dirname $argv0] -source $testdir/tester.tcl -set ::testprefix e_dropview - -proc dropview_reopen_db {} { - db close - forcedelete test.db test.db2 - sqlite3 db test.db - - db eval { - ATTACH 'test.db2' AS aux; - CREATE TABLE t1(a, b); - INSERT INTO t1 VALUES('a main', 'b main'); - CREATE VIEW v1 AS SELECT * FROM t1; - CREATE VIEW v2 AS SELECT * FROM t1; - - CREATE TEMP TABLE t1(a, b); - INSERT INTO temp.t1 VALUES('a temp', 'b temp'); - CREATE VIEW temp.v1 AS SELECT * FROM t1; - - CREATE TABLE aux.t1(a, b); - INSERT INTO aux.t1 VALUES('a aux', 'b aux'); - CREATE VIEW aux.v1 AS SELECT * FROM t1; - CREATE VIEW aux.v2 AS SELECT * FROM t1; - CREATE VIEW aux.v3 AS SELECT * FROM t1; - } -} - -proc list_all_views {{db db}} { - set res [list] - $db eval { PRAGMA database_list } { - set tbl "$name.sqlite_master" - if {$name == "temp"} { set tbl sqlite_temp_master } - - set sql "SELECT '$name.' || name FROM $tbl WHERE type = 'view'" - lappend res {*}[$db eval $sql] - } - set res -} - -proc list_all_data {{db db}} { - set res [list] - $db eval { PRAGMA database_list } { - set tbl "$name.sqlite_master" - if {$name == "temp"} { set tbl sqlite_temp_master } - - db eval "SELECT '$name.' || name AS x FROM $tbl WHERE type = 'table'" { - lappend res [list $x [db eval "SELECT * FROM $x"]] - } - } - set res -} - -proc do_dropview_tests {nm args} { - uplevel do_select_tests $nm $args -} - -# -- syntax diagram drop-view-stmt -# -# All paths in the syntax diagram for DROP VIEW are tested by tests 1.*. -# -do_dropview_tests 1 -repair { - dropview_reopen_db -} -tclquery { - list_all_views -} { - 1 "DROP VIEW v1" {main.v1 main.v2 aux.v1 aux.v2 aux.v3} - 2 "DROP VIEW v2" {main.v1 temp.v1 aux.v1 aux.v2 aux.v3} - 3 "DROP VIEW main.v1" {main.v2 temp.v1 aux.v1 aux.v2 aux.v3} - 4 "DROP VIEW main.v2" {main.v1 temp.v1 aux.v1 aux.v2 aux.v3} - 5 "DROP VIEW IF EXISTS v1" {main.v1 main.v2 aux.v1 aux.v2 aux.v3} - 6 "DROP VIEW IF EXISTS v2" {main.v1 temp.v1 aux.v1 aux.v2 aux.v3} - 7 "DROP VIEW IF EXISTS main.v1" {main.v2 temp.v1 aux.v1 aux.v2 aux.v3} - 8 "DROP VIEW IF EXISTS main.v2" {main.v1 temp.v1 aux.v1 aux.v2 aux.v3} -} - -# EVIDENCE-OF: R-27002-52307 The DROP VIEW statement removes a view -# created by the CREATE VIEW statement. -# -dropview_reopen_db -do_execsql_test 2.1 { - CREATE VIEW "new view" AS SELECT * FROM t1 AS x, t1 AS y; - SELECT * FROM "new view"; -} {{a main} {b main} {a main} {b main}} -do_execsql_test 2.2 {; - SELECT * FROM sqlite_master WHERE name = 'new view'; -} { - view {new view} {new view} 0 - {CREATE VIEW "new view" AS SELECT * FROM t1 AS x, t1 AS y} -} -do_execsql_test 2.3 { - DROP VIEW "new view"; - SELECT * FROM sqlite_master WHERE name = 'new view'; -} {} -do_catchsql_test 2.4 { - SELECT * FROM "new view" -} {1 {no such table: new view}} - -# EVIDENCE-OF: R-00359-41639 The view definition is removed from the -# database schema, but no actual data in the underlying base tables is -# modified. -# -# For each view in the database, check that it can be queried. Then drop -# it. Check that it can no longer be queried and is no longer listed -# in any schema table. Then check that the contents of the db tables have -# not changed -# -set databasedata [list_all_data] - -do_execsql_test 3.1.0 { SELECT * FROM temp.v1 } {{a temp} {b temp}} -do_execsql_test 3.1.1 { DROP VIEW temp.v1 } {} -do_catchsql_test 3.1.2 { SELECT * FROM temp.v1 } {1 {no such table: temp.v1}} -do_test 3.1.3 { list_all_views } {main.v1 main.v2 aux.v1 aux.v2 aux.v3} -do_test 3.1.4 { list_all_data } $databasedata - -do_execsql_test 3.2.0 { SELECT * FROM v1 } {{a main} {b main}} -do_execsql_test 3.2.1 { DROP VIEW v1 } {} -do_catchsql_test 3.2.2 { SELECT * FROM main.v1 } {1 {no such table: main.v1}} -do_test 3.2.3 { list_all_views } {main.v2 aux.v1 aux.v2 aux.v3} -do_test 3.2.4 { list_all_data } $databasedata - -do_execsql_test 3.3.0 { SELECT * FROM v2 } {{a main} {b main}} -do_execsql_test 3.3.1 { DROP VIEW v2 } {} -do_catchsql_test 3.3.2 { SELECT * FROM main.v2 } {1 {no such table: main.v2}} -do_test 3.3.3 { list_all_views } {aux.v1 aux.v2 aux.v3} -do_test 3.3.4 { list_all_data } $databasedata - -do_execsql_test 3.4.0 { SELECT * FROM v1 } {{a aux} {b aux}} -do_execsql_test 3.4.1 { DROP VIEW v1 } {} -do_catchsql_test 3.4.2 { SELECT * FROM v1 } {1 {no such table: v1}} -do_test 3.4.3 { list_all_views } {aux.v2 aux.v3} -do_test 3.4.4 { list_all_data } $databasedata - -do_execsql_test 3.4.0 { SELECT * FROM aux.v2 } {{a aux} {b aux}} -do_execsql_test 3.4.1 { DROP VIEW aux.v2 } {} -do_catchsql_test 3.4.2 { SELECT * FROM aux.v2 } {1 {no such table: aux.v2}} -do_test 3.4.3 { list_all_views } {aux.v3} -do_test 3.4.4 { list_all_data } $databasedata - -do_execsql_test 3.5.0 { SELECT * FROM v3 } {{a aux} {b aux}} -do_execsql_test 3.5.1 { DROP VIEW v3 } {} -do_catchsql_test 3.5.2 { SELECT * FROM v3 } {1 {no such table: v3}} -do_test 3.5.3 { list_all_views } {} -do_test 3.5.4 { list_all_data } $databasedata - -# EVIDENCE-OF: R-25558-37487 If the specified view cannot be found and -# the IF EXISTS clause is not present, it is an error. -# -do_dropview_tests 4 -repair { - dropview_reopen_db -} -errorformat { - no such view: %s -} { - 1 "DROP VIEW xx" xx - 2 "DROP VIEW main.xx" main.xx - 3 "DROP VIEW temp.v2" temp.v2 -} - -# EVIDENCE-OF: R-07490-32536 If the specified view cannot be found and -# an IF EXISTS clause is present in the DROP VIEW statement, then the -# statement is a no-op. -# -do_dropview_tests 5 -repair { - dropview_reopen_db -} -tclquery { - list_all_views - expr {[list_all_views] == "main.v1 main.v2 temp.v1 aux.v1 aux.v2 aux.v3"} -} { - 1 "DROP VIEW IF EXISTS xx" 1 - 2 "DROP VIEW IF EXISTS main.xx" 1 - 3 "DROP VIEW IF EXISTS temp.v2" 1 -} - - - - -finish_test |
