]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Still more test cases in where7.test. (CVS 6080)
authordrh <drh@noemail.net>
Tue, 30 Dec 2008 14:40:06 +0000 (14:40 +0000)
committerdrh <drh@noemail.net>
Tue, 30 Dec 2008 14:40:06 +0000 (14:40 +0000)
FossilOrigin-Name: eb9ba5fe70df56ee00828f7dbaf71ae6f825737d

manifest
manifest.uuid
test/where7.test

index 14a8a21d1434fcbdf40baed4bf7b673882ec1d8d..37cd9666fc356d4e118e7f9b566d1daff3b77f5a 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Add\smany\snew\stest\scases\sto\swhere7.test.\s(CVS\s6079)
-D 2008-12-30T14:14:04
+C Still\smore\stest\scases\sin\swhere7.test.\s(CVS\s6080)
+D 2008-12-30T14:40:07
 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
 F Makefile.in 77635d0909c2067cee03889a1e04ce910d8fb809
 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
@@ -655,7 +655,7 @@ F test/where3.test 97d3936e6a443b968f1a61cdcc0f673252000e94
 F test/where4.test e9b9e2f2f98f00379e6031db6a6fca29bae782a2
 F test/where5.test fdf66f96d29a064b63eb543e28da4dfdccd81ad2
 F test/where6.test 42c4373595f4409d9c6a9987b4a60000ad664faf
-F test/where7.test 696b4849b246390541bbc7a72d6905477b6fae16
+F test/where7.test c56c34e84f2bf8d4c787cf8ee6ce8b705468b8cb
 F test/where8.test 81036f3f79054309da744fcffc9ce7ed97b5b4a9
 F test/where8m.test c1010d61826412ff66abd29bfb32e5d6b37d965c
 F test/wherelimit.test 5e9fd41e79bb2b2d588ed999d641d9c965619b31
@@ -688,7 +688,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81
 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
 F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
-P 2df02b543edd77282aabff08327c3ab102139a24
-R aab27821bbed8dbda55db72bfa23225c
+P 174985831f9c8f5c393556d3248b01852573abc7
+R 17851a9df220a820ebc78b7af26f16ec
 U drh
-Z b472d915834f5266f8a10ea615ae5e3a
+Z 43c0beeea443c43af52158e52be780a2
index 3df9cb8c327076a449d4db3d624491268f3e6ded..d842132c3db7a9cdf3f66368210a508336202177 100644 (file)
@@ -1 +1 @@
-174985831f9c8f5c393556d3248b01852573abc7
\ No newline at end of file
+eb9ba5fe70df56ee00828f7dbaf71ae6f825737d
\ No newline at end of file
index 56a369424e774bbd363bce1fcee6336f0fe7e405..98b4ea3ebbf5b1f88b80b1f961ff6e98aae00bef 100644 (file)
@@ -11,7 +11,7 @@
 # This file implements regression tests for SQLite library.  The
 # focus of this file is testing the multi-index OR clause optimizer.
 #
-# $Id: where7.test,v 1.4 2008/12/30 14:14:04 drh Exp $
+# $Id: where7.test,v 1.5 2008/12/30 14:40:07 drh Exp $
 
 set testdir [file dirname $argv0]
 source $testdir/tester.tcl
@@ -95,19 +95,66 @@ do_test where7-1.11 {
   }
 } {2 5 scan 0 sort 0}
 do_test where7-1.12 {
-breakpoint
   count_steps {
     SELECT a FROM t1 WHERE (b BETWEEN 2 AND 4) OR c=100 ORDER BY a
   }
 } {1 2 3 5 scan 0 sort 0}
 do_test where7-1.13 {
-breakpoint
   count_steps {
     SELECT a FROM t1 WHERE (b BETWEEN 0 AND 2) OR (c BETWEEN 9 AND 999)
     ORDER BY a DESC
   }
 } {5 4 1 scan 0 sort 1}
 
+do_test where7-1.20 {
+  set sql "SELECT a FROM t1 WHERE a=11 OR b=11"
+  for {set i 12} {$i<400} {incr i} {
+    append sql " OR a=$i OR b=$i"
+  }
+  append sql " ORDER BY a"
+  count_steps $sql
+} {scan 0 sort 0}
+do_test where7-1.21 {
+  set sql "SELECT a FROM t1 WHERE b=11 OR c=11"
+  for {set i 12} {$i<400} {incr i} {
+    append sql " OR b=$i OR c=$i"
+  }
+  append sql " ORDER BY a"
+  count_steps $sql
+} {5 scan 0 sort 0}
+do_test where7-1.22 {
+  set sql "SELECT a FROM t1 WHERE (b=11 OR c=11"
+  for {set i 12} {$i<400} {incr i} {
+    append sql " OR b=$i OR c=$i"
+  }
+  append sql ") AND d>=0 AND d<9999 ORDER BY a"
+  count_steps $sql
+} {5 scan 0 sort 0}
+do_test where7-1.23 {
+  set sql "SELECT a FROM t1 WHERE (b=11 OR c=11"
+  for {set i 12} {$i<400} {incr i} {
+    append sql " OR (b=$i AND d!=0) OR (c=$i AND d IS NOT NULL)"
+  }
+  append sql ") AND d>=0 AND d<9999 ORDER BY a"
+  count_steps $sql
+} {5 scan 0 sort 0}
+
+do_test where7-1.31 {
+  set sql "SELECT a FROM t1 WHERE (a=11 AND b=11)"
+  for {set i 12} {$i<400} {incr i} {
+    append sql " OR (a=$i AND b=$i)"
+  }
+  append sql " ORDER BY a"
+  count_steps $sql
+} {scan 0 sort 0}
+do_test where7-1.32 {
+  set sql "SELECT a FROM t1 WHERE (b=11 AND c=11)"
+  for {set i 12} {$i<400} {incr i} {
+    append sql " OR (b=$i AND c=$i)"
+  }
+  append sql " ORDER BY a"
+  count_steps $sql
+} {scan 0 sort 0}
 
 # Lots of randomly generated OR-clause processing tests.
 #