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

Side by Side Diff: third_party/sqlite/src/test/tkt-80ba201079.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 # 2010 December 6 1 # 2010 December 6
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 #***********************************************************************
11 # This file implements regression tests for SQLite library. Specifically, 11 # This file implements regression tests for SQLite library. Specifically,
12 # it tests that ticket [80ba201079ea608071d22a57856b940ea3ac53ce] is 12 # it tests that ticket [80ba201079ea608071d22a57856b940ea3ac53ce] is
13 # resolved. That ticket is about an incorrect result that appears when 13 # resolved. That ticket is about an incorrect result that appears when
14 # an index is added. The root cause is that a constant is being used 14 # an index is added. The root cause is that a constant is being used
15 # without initialization when the OR optimization applies in the WHERE clause. 15 # without initialization when the OR optimization applies in the WHERE clause.
16 # 16 #
17 17
18 set testdir [file dirname $argv0] 18 set testdir [file dirname $argv0]
19 source $testdir/tester.tcl 19 source $testdir/tester.tcl
20 set ::testprefix tkt-80ba2 20 set ::testprefix tkt-80ba201079
21 21
22 do_test tkt-80ba2-100 { 22 do_test tkt-80ba2-100 {
23 db eval { 23 db eval {
24 CREATE TABLE t1(a); 24 CREATE TABLE t1(a);
25 INSERT INTO t1 VALUES('A'); 25 INSERT INTO t1 VALUES('A');
26 CREATE TABLE t2(b); 26 CREATE TABLE t2(b);
27 INSERT INTO t2 VALUES('B'); 27 INSERT INTO t2 VALUES('B');
28 CREATE TABLE t3(c); 28 CREATE TABLE t3(c);
29 INSERT INTO t3 VALUES('C'); 29 INSERT INTO t3 VALUES('C');
30 SELECT * FROM t1, t2 30 SELECT * FROM t1, t2
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
157 (a='A' AND d='E') OR 157 (a='A' AND d='E') OR
158 (b='B' AND c IN ('C', 'D', 'E')) 158 (b='B' AND c IN ('C', 'D', 'E'))
159 } {A B C D E} 159 } {A B C D E}
160 160
161 do_execsql_test 303 { 161 do_execsql_test 303 {
162 SELECT * FROM t1, t2 WHERE 162 SELECT * FROM t1, t2 WHERE
163 (a='A' AND d='E') OR 163 (a='A' AND d='E') OR
164 (b='B' AND c IN (SELECT c FROM t1)) 164 (b='B' AND c IN (SELECT c FROM t1))
165 } {A B C D E} 165 } {A B C D E}
166 166
167 do_execsql_test 304 { 167 ifcapable compound {
168 SELECT * FROM t1, t2 WHERE 168 do_execsql_test 304 {
169 (a='A' AND d='E') OR 169 SELECT * FROM t1, t2 WHERE
170 (b='B' AND c IN (SELECT 'B' UNION SELECT 'C' UNION SELECT 'D')) 170 (a='A' AND d='E') OR
171 } {A B C D E} 171 (b='B' AND c IN (SELECT 'B' UNION SELECT 'C' UNION SELECT 'D'))
172 } {A B C D E}
173 }
172 174
173 do_execsql_test 305 { 175 do_execsql_test 305 {
174 SELECT * FROM t1, t2 WHERE 176 SELECT * FROM t1, t2 WHERE
175 (b='B' AND c IN ('C', 'D', 'E')) OR 177 (b='B' AND c IN ('C', 'D', 'E')) OR
176 (a='A' AND d='E') 178 (a='A' AND d='E')
177 } {A B C D E} 179 } {A B C D E}
178 180
179 do_execsql_test 306 { 181 do_execsql_test 306 {
180 SELECT * FROM t1, t2 WHERE 182 SELECT * FROM t1, t2 WHERE
181 (b='B' AND c IN (SELECT c FROM t1)) OR 183 (b='B' AND c IN (SELECT c FROM t1)) OR
182 (a='A' AND d='E') 184 (a='A' AND d='E')
183 } {A B C D E} 185 } {A B C D E}
184 186
185 do_execsql_test 307 { 187 ifcapable compound {
186 SELECT * FROM t1, t2 WHERE 188 do_execsql_test 307 {
187 (b='B' AND c IN (SELECT 'B' UNION SELECT 'C' UNION SELECT 'D')) OR 189 SELECT * FROM t1, t2 WHERE
188 (a='A' AND d='E') 190 (b='B' AND c IN (SELECT 'B' UNION SELECT 'C' UNION SELECT 'D')) OR
189 } {A B C D E} 191 (a='A' AND d='E')
192 } {A B C D E}
193 }
190 194
191 finish_test 195 finish_test
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698