Index: third_party/sqlite/sqlite-src-3080704/test/vtab3.test |
diff --git a/third_party/sqlite/sqlite-src-3080704/test/vtab3.test b/third_party/sqlite/sqlite-src-3080704/test/vtab3.test |
deleted file mode 100644 |
index e8c6982a57c41c3b4f6fe17c9180931437d1502c..0000000000000000000000000000000000000000 |
--- a/third_party/sqlite/sqlite-src-3080704/test/vtab3.test |
+++ /dev/null |
@@ -1,140 +0,0 @@ |
-# 2006 June 10 |
-# |
-# 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 the authorisation callback and virtual tables. |
-# |
-# $Id: vtab3.test,v 1.3 2008/07/12 14:52:21 drh Exp $ |
- |
-set testdir [file dirname $argv0] |
-source $testdir/tester.tcl |
- |
-ifcapable !vtab||!auth { |
- finish_test |
- return |
-} |
- |
-set ::auth_fail 0 |
-set ::auth_log [list] |
-set ::auth_filter [list SQLITE_READ SQLITE_UPDATE SQLITE_SELECT SQLITE_PRAGMA] |
- |
-proc auth {code arg1 arg2 arg3 arg4 args} { |
- if {[lsearch $::auth_filter $code]>-1} { |
- return SQLITE_OK |
- } |
- lappend ::auth_log $code $arg1 $arg2 $arg3 $arg4 |
- incr ::auth_fail -1 |
- if {$::auth_fail == 0} { |
- return SQLITE_DENY |
- } |
- return SQLITE_OK |
-} |
- |
-do_test vtab3-1.1 { |
- execsql { |
- CREATE TABLE elephant( |
- name VARCHAR(32), |
- color VARCHAR(16), |
- age INTEGER, |
- UNIQUE(name, color) |
- ); |
- } |
-} {} |
- |
- |
-do_test vtab3-1.2 { |
- register_echo_module [sqlite3_connection_pointer db] |
- db authorizer ::auth |
- execsql { |
- CREATE VIRTUAL TABLE pachyderm USING echo(elephant); |
- } |
- set ::auth_log |
-} [list \ |
- SQLITE_INSERT sqlite_master {} main {} \ |
- SQLITE_CREATE_VTABLE pachyderm echo main {} \ |
-] |
- |
-do_test vtab3-1.3 { |
- set ::auth_log [list] |
- execsql { |
- DROP TABLE pachyderm; |
- } |
- set ::auth_log |
-} [list \ |
- SQLITE_DELETE sqlite_master {} main {} \ |
- SQLITE_DROP_VTABLE pachyderm echo main {} \ |
- SQLITE_DELETE pachyderm {} main {} \ |
- SQLITE_DELETE sqlite_master {} main {} \ |
-] |
- |
-do_test vtab3-1.4 { |
- set ::auth_fail 1 |
- catchsql { |
- CREATE VIRTUAL TABLE pachyderm USING echo(elephant); |
- } |
-} {1 {not authorized}} |
-do_test vtab3-1.5 { |
- execsql { |
- SELECT name FROM sqlite_master WHERE type = 'table'; |
- } |
-} {elephant} |
- |
-do_test vtab3-1.5 { |
- set ::auth_fail 2 |
- catchsql { |
- CREATE VIRTUAL TABLE pachyderm USING echo(elephant); |
- } |
-} {1 {not authorized}} |
-do_test vtab3-1.6 { |
- execsql { |
- SELECT name FROM sqlite_master WHERE type = 'table'; |
- } |
-} {elephant} |
- |
-do_test vtab3-1.5 { |
- set ::auth_fail 3 |
- catchsql { |
- CREATE VIRTUAL TABLE pachyderm USING echo(elephant); |
- } |
-} {0 {}} |
-do_test vtab3-1.6 { |
- execsql { |
- SELECT name FROM sqlite_master WHERE type = 'table'; |
- } |
-} {elephant pachyderm} |
- |
-foreach i [list 1 2 3 4] { |
- set ::auth_fail $i |
- do_test vtab3-1.7.$i.1 { |
- set rc [catch { |
- execsql {DROP TABLE pachyderm;} |
- } msg] |
- if {$msg eq "authorization denied"} {set msg "not authorized"} |
- list $rc $msg |
- } {1 {not authorized}} |
- do_test vtab3-1.7.$i.2 { |
- execsql { |
- SELECT name FROM sqlite_master WHERE type = 'table'; |
- } |
- } {elephant pachyderm} |
-} |
-do_test vtab3-1.8.1 { |
- set ::auth_fail 0 |
- catchsql { |
- DROP TABLE pachyderm; |
- } |
-} {0 {}} |
-do_test vtab3-1.8.2 { |
- execsql { |
- SELECT name FROM sqlite_master WHERE type = 'table'; |
- } |
-} {elephant} |
- |
-finish_test |