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

Side by Side Diff: third_party/sqlite/src/test/auth2.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 # 2006 Aug 24 1 # 2006 Aug 24
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 13 matching lines...) Expand all
24 finish_test 24 finish_test
25 return 25 return
26 } 26 }
27 27
28 do_test auth2-1.1 { 28 do_test auth2-1.1 {
29 execsql { 29 execsql {
30 CREATE TABLE t1(a,b,c); 30 CREATE TABLE t1(a,b,c);
31 INSERT INTO t1 VALUES(1,2,3); 31 INSERT INTO t1 VALUES(1,2,3);
32 } 32 }
33 set ::flist {} 33 set ::flist {}
34 proc auth {code arg1 arg2 arg3 arg4} { 34 proc auth {code arg1 arg2 arg3 arg4 args} {
35 if {$code=="SQLITE_FUNCTION"} { 35 if {$code=="SQLITE_FUNCTION"} {
36 lappend ::flist $arg2 36 lappend ::flist $arg2
37 if {$arg2=="max"} { 37 if {$arg2=="max"} {
38 return SQLITE_DENY 38 return SQLITE_DENY
39 } elseif {$arg2=="min"} { 39 } elseif {$arg2=="min"} {
40 return SQLITE_IGNORE 40 return SQLITE_IGNORE
41 } else { 41 } else {
42 return SQLITE_OK 42 return SQLITE_OK
43 } 43 }
44 } 44 }
(...skipping 28 matching lines...) Expand all
73 } coalesce 73 } coalesce
74 74
75 # Make sure the authorizer is not called when parsing the schema 75 # Make sure the authorizer is not called when parsing the schema
76 # and when computing the result set of a view. 76 # and when computing the result set of a view.
77 # 77 #
78 db close 78 db close
79 sqlite3 db test.db 79 sqlite3 db test.db
80 sqlite3 db2 test.db 80 sqlite3 db2 test.db
81 proc auth {args} { 81 proc auth {args} {
82 global authargs 82 global authargs
83 append authargs $args\n 83 append authargs [lrange $args 0 4]\n
84 return SQLITE_OK 84 return SQLITE_OK
85 } 85 }
86 db auth auth 86 db auth auth
87 do_test auth2-2.1 { 87 do_test auth2-2.1 {
88 set ::authargs {} 88 set ::authargs {}
89 db eval { 89 db eval {
90 CREATE TABLE t2(x,y,z); 90 CREATE TABLE t2(x,y,z);
91 } 91 }
92 set ::authargs 92 set ::authargs
93 } {SQLITE_INSERT sqlite_master {} main {} 93 } {SQLITE_INSERT sqlite_master {} main {}
94 SQLITE_CREATE_TABLE t2 {} main {} 94 SQLITE_CREATE_TABLE t2 {} main {}
95 SQLITE_UPDATE sqlite_master type main {} 95 SQLITE_UPDATE sqlite_master type main {}
96 SQLITE_UPDATE sqlite_master name main {} 96 SQLITE_UPDATE sqlite_master name main {}
97 SQLITE_UPDATE sqlite_master tbl_name main {} 97 SQLITE_UPDATE sqlite_master tbl_name main {}
98 SQLITE_UPDATE sqlite_master rootpage main {} 98 SQLITE_UPDATE sqlite_master rootpage main {}
99 SQLITE_UPDATE sqlite_master sql main {} 99 SQLITE_UPDATE sqlite_master sql main {}
100 SQLITE_READ sqlite_master ROWID main {} 100 SQLITE_READ sqlite_master ROWID main {}
101 SQLITE_READ sqlite_master name main {} 101 SQLITE_READ sqlite_master name main {}
102 SQLITE_READ sqlite_master rootpage main {} 102 SQLITE_READ sqlite_master rootpage main {}
103 SQLITE_READ sqlite_master sql main {} 103 SQLITE_READ sqlite_master sql main {}
104 SQLITE_READ sqlite_master tbl_name main {} 104 SQLITE_READ sqlite_master tbl_name main {}
105 SQLITE_READ sqlite_master type main {}
105 SQLITE_READ sqlite_master ROWID main {} 106 SQLITE_READ sqlite_master ROWID main {}
106 } 107 }
107 do_test auth2-2.2 { 108 do_test auth2-2.2 {
108 set ::authargs {} 109 set ::authargs {}
109 db eval { 110 db eval {
110 CREATE VIEW v2 AS SELECT x+y AS a, y+z AS b from t2; 111 CREATE VIEW v2 AS SELECT x+y AS a, y+z AS b from t2;
111 } 112 }
112 set ::authargs 113 set ::authargs
113 } {SQLITE_INSERT sqlite_master {} main {} 114 } {SQLITE_INSERT sqlite_master {} main {}
114 SQLITE_CREATE_VIEW v2 {} main {} 115 SQLITE_CREATE_VIEW v2 {} main {}
115 SQLITE_UPDATE sqlite_master type main {} 116 SQLITE_UPDATE sqlite_master type main {}
116 SQLITE_UPDATE sqlite_master name main {} 117 SQLITE_UPDATE sqlite_master name main {}
117 SQLITE_UPDATE sqlite_master tbl_name main {} 118 SQLITE_UPDATE sqlite_master tbl_name main {}
118 SQLITE_UPDATE sqlite_master rootpage main {} 119 SQLITE_UPDATE sqlite_master rootpage main {}
119 SQLITE_UPDATE sqlite_master sql main {} 120 SQLITE_UPDATE sqlite_master sql main {}
120 SQLITE_READ sqlite_master ROWID main {} 121 SQLITE_READ sqlite_master ROWID main {}
121 SQLITE_READ sqlite_master name main {} 122 SQLITE_READ sqlite_master name main {}
122 SQLITE_READ sqlite_master rootpage main {} 123 SQLITE_READ sqlite_master rootpage main {}
123 SQLITE_READ sqlite_master sql main {} 124 SQLITE_READ sqlite_master sql main {}
124 SQLITE_READ sqlite_master tbl_name main {} 125 SQLITE_READ sqlite_master tbl_name main {}
126 SQLITE_READ sqlite_master type main {}
125 SQLITE_READ sqlite_master ROWID main {} 127 SQLITE_READ sqlite_master ROWID main {}
126 } 128 }
127 do_test auth2-2.3 { 129 do_test auth2-2.3 {
128 set ::authargs {} 130 set ::authargs {}
129 db eval { 131 db eval {
130 SELECT a, b FROM v2; 132 SELECT a, b FROM v2;
131 } 133 }
132 set ::authargs 134 set ::authargs
133 } {SQLITE_SELECT {} {} {} {} 135 } {SQLITE_SELECT {} {} {} {}
134 SQLITE_READ v2 a main {}
135 SQLITE_READ v2 b main {}
136 SQLITE_READ t2 x main v2 136 SQLITE_READ t2 x main v2
137 SQLITE_READ t2 y main v2 137 SQLITE_READ t2 y main v2
138 SQLITE_READ t2 y main v2 138 SQLITE_READ t2 y main v2
139 SQLITE_READ t2 z main v2 139 SQLITE_READ t2 z main v2
140 SQLITE_READ v2 a main {}
141 SQLITE_READ v2 b main {}
140 SQLITE_SELECT {} {} {} v2 142 SQLITE_SELECT {} {} {} v2
141 } 143 }
142 do_test auth2-2.4 { 144 do_test auth2-2.4 {
143 db2 eval { 145 db2 eval {
144 CREATE TABLE t3(p,q,r); 146 CREATE TABLE t3(p,q,r);
145 } 147 }
146 set ::authargs {} 148 set ::authargs {}
147 db eval { 149 db eval {
148 SELECT b, a FROM v2; 150 SELECT b, a FROM v2;
149 } 151 }
150 set ::authargs 152 set ::authargs
151 } {SQLITE_SELECT {} {} {} {} 153 } {SQLITE_SELECT {} {} {} {}
152 SQLITE_READ v2 b main {}
153 SQLITE_READ v2 a main {}
154 SQLITE_READ t2 x main v2 154 SQLITE_READ t2 x main v2
155 SQLITE_READ t2 y main v2 155 SQLITE_READ t2 y main v2
156 SQLITE_READ t2 y main v2 156 SQLITE_READ t2 y main v2
157 SQLITE_READ t2 z main v2 157 SQLITE_READ t2 z main v2
158 SQLITE_READ v2 b main {}
159 SQLITE_READ v2 a main {}
158 SQLITE_SELECT {} {} {} v2 160 SQLITE_SELECT {} {} {} v2
159 SQLITE_SELECT {} {} {} {} 161 SQLITE_SELECT {} {} {} {}
160 SQLITE_READ v2 b main {}
161 SQLITE_READ v2 a main {}
162 SQLITE_READ t2 x main v2 162 SQLITE_READ t2 x main v2
163 SQLITE_READ t2 y main v2 163 SQLITE_READ t2 y main v2
164 SQLITE_READ t2 y main v2 164 SQLITE_READ t2 y main v2
165 SQLITE_READ t2 z main v2 165 SQLITE_READ t2 z main v2
166 SQLITE_READ v2 b main {}
167 SQLITE_READ v2 a main {}
166 SQLITE_SELECT {} {} {} v2 168 SQLITE_SELECT {} {} {} v2
167 } 169 }
168 db2 close 170 db2 close
169 171
170 finish_test 172 finish_test
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698