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

Side by Side Diff: third_party/sqlite/sqlite-src-3080704/test/loadext2.test

Issue 2363173002: [sqlite] Remove obsolete reference version 3.8.7.4. (Closed)
Patch Set: Created 4 years, 2 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
(Empty)
1 # 2006 August 23
2 #
3 # The author disclaims copyright to this source code. In place of
4 # a legal notice, here is a blessing:
5 #
6 # May you do good and not evil.
7 # May you find forgiveness for yourself and forgive others.
8 # May you share freely, never taking more than you give.
9 #
10 #***********************************************************************
11 # This file implements regression tests for SQLite library. The
12 # focus of this script is automatic extension loading and the
13 # sqlite3_auto_extension() API.
14 #
15 # $Id: loadext2.test,v 1.3 2008/03/19 16:08:54 drh Exp $
16
17 set testdir [file dirname $argv0]
18 source $testdir/tester.tcl
19
20 # Only run these tests if the approriate APIs are defined
21 # in the system under test.
22 #
23 ifcapable !load_ext {
24 finish_test
25 return
26 }
27 if {[info command sqlite3_auto_extension_sqr]==""} {
28 finish_test
29 return
30 }
31
32
33 # None of the extension are loaded by default.
34 #
35 do_test loadext2-1.1 {
36 catchsql {
37 SELECT sqr(2)
38 }
39 } {1 {no such function: sqr}}
40 do_test loadext2-1.2 {
41 catchsql {
42 SELECT cube(2)
43 }
44 } {1 {no such function: cube}}
45
46 # Extensions loaders not currently registered
47 #
48 do_test loadext2-1.2.1 {
49 sqlite3_cancel_auto_extension_sqr
50 } {0}
51 do_test loadext2-1.2.2 {
52 sqlite3_cancel_auto_extension_sqr
53 } {0}
54 do_test loadext2-1.2.3 {
55 sqlite3_cancel_auto_extension_sqr
56 } {0}
57
58
59 # Register auto-loaders. Still functions do not exist.
60 #
61 do_test loadext2-1.3 {
62 sqlite3_auto_extension_sqr
63 sqlite3_auto_extension_cube
64 catchsql {
65 SELECT sqr(2)
66 }
67 } {1 {no such function: sqr}}
68 do_test loadext2-1.4 {
69 catchsql {
70 SELECT cube(2)
71 }
72 } {1 {no such function: cube}}
73
74
75 # Functions do exist in a new database connection
76 #
77 do_test loadext2-1.5 {
78 sqlite3 db test.db
79 catchsql {
80 SELECT sqr(2)
81 }
82 } {0 4.0}
83 do_test loadext2-1.6 {
84 catchsql {
85 SELECT cube(2)
86 }
87 } {0 8.0}
88
89
90 # Reset extension auto loading. Existing extensions still exist.
91 #
92 do_test loadext2-1.7.1 {
93 sqlite3_cancel_auto_extension_sqr
94 } {1}
95 do_test loadext2-1.7.2 {
96 sqlite3_cancel_auto_extension_sqr
97 } {0}
98 do_test loadext2-1.7.3 {
99 sqlite3_cancel_auto_extension_cube
100 } {1}
101 do_test loadext2-1.7.4 {
102 sqlite3_cancel_auto_extension_cube
103 } {0}
104 do_test loadext2-1.7.5 {
105 catchsql {
106 SELECT sqr(2)
107 }
108 } {0 4.0}
109 do_test loadext2-1.8 {
110 catchsql {
111 SELECT cube(2)
112 }
113 } {0 8.0}
114
115
116 # Register only the sqr() function.
117 #
118 do_test loadext2-1.9 {
119 sqlite3_auto_extension_sqr
120 sqlite3 db test.db
121 catchsql {
122 SELECT sqr(2)
123 }
124 } {0 4.0}
125 do_test loadext2-1.10 {
126 catchsql {
127 SELECT cube(2)
128 }
129 } {1 {no such function: cube}}
130
131 # Register only the cube() function.
132 #
133 do_test loadext2-1.11 {
134 sqlite3_reset_auto_extension
135 sqlite3_auto_extension_cube
136 sqlite3 db test.db
137 catchsql {
138 SELECT sqr(2)
139 }
140 } {1 {no such function: sqr}}
141 do_test loadext2-1.12 {
142 catchsql {
143 SELECT cube(2)
144 }
145 } {0 8.0}
146
147 # Register a broken entry point.
148 #
149 do_test loadext2-1.13 {
150 sqlite3_auto_extension_broken
151 set rc [catch {sqlite3 db test.db} errmsg]
152 lappend rc $errmsg
153 } {1 {automatic extension loading failed: broken autoext!}}
154 do_test loadext2-1.14 {
155 catchsql {
156 SELECT sqr(2)
157 }
158 } {1 {no such function: sqr}}
159 do_test loadext2-1.15 {
160 catchsql {
161 SELECT cube(2)
162 }
163 } {0 8.0}
164
165
166 sqlite3_reset_auto_extension
167 autoinstall_test_functions
168 finish_test
OLDNEW
« no previous file with comments | « third_party/sqlite/sqlite-src-3080704/test/loadext.test ('k') | third_party/sqlite/sqlite-src-3080704/test/lock.test » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698