]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Stricter test cases. location-function
authordrh <drh@noemail.net>
Fri, 29 Dec 2017 16:37:33 +0000 (16:37 +0000)
committerdrh <drh@noemail.net>
Fri, 29 Dec 2017 16:37:33 +0000 (16:37 +0000)
FossilOrigin-Name: 9406c0a685fd5ff3516a66402b0514a1440652822a5eecf0b7af85929f3079e8

manifest
manifest.uuid
test/func6.test

index 3d0577aaea482a81003e6dd982661c8428dca46c..6b6ae42bc2e89fa33931d610c64f841d86b2cadf 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sa\stypo\sin\sthe\sMSVC\smakefile.
-D 2017-12-29T15:19:03.549
+C Stricter\stest\scases.
+D 2017-12-29T16:37:33.070
 F Makefile.in 804c347948b0ad5a962aea3e59413e897227e0173d0e76910f11f473e6c7ae9b
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
 F Makefile.msc 57dcce0595d4a0c4b94b6f6ba732b8e33540358adf5fb8e1aa8389d34a9677e8
@@ -917,7 +917,7 @@ F test/func2.test 772d66227e4e6684b86053302e2d74a2500e1e0f
 F test/func3.test d202a7606d23f90988a664e88e268aed1087c11c
 F test/func4.test 6beacdfcb0e18c358e6c2dcacf1b65d1fa80955f
 F test/func5.test cdd224400bc3e48d891827cc913a57051a426fa4
-F test/func6.test 8a6ecb974a9d0bdeef6a06aff8e305b1667c3b922103037735b39c716360ebc2
+F test/func6.test 1a2bc511fedb779e2bd3154361385216c6d35080f36bfe896b8cdd1b1954294a
 F test/fuzz-oss1.test e58330d01cbbd8215ee636b17a03fe220b37dbfa
 F test/fuzz.test 96083052bf5765e4518c1ba686ce2bab785670d1
 F test/fuzz2.test 76dc35b32b6d6f965259508508abce75a6c4d7e1
@@ -1688,7 +1688,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 7a7f826e324b1a2c332e2f1d0740fd0babffcaca6275a798572f02ad367b99ab
-R 0e2a4a2bb72ba4dcfe2f3a815db6ddb3
+P 89e5720a8d8d46d4e2f16f15678e91336117e64abc977174e2b345a30308d0d2
+R 9cb794037b97521b258cb5fdbbf60d53
 U drh
-Z 9e1beeafb001196cab204d1af69f0fe2
+Z 8d1ee588df9bbfd069e3afd64819112f
index a57419f54c6f3c2dd593b530b70c1a62f34eec8d..b37d8e1f54a750dee6487eaf84b109d33841eea2 100644 (file)
@@ -1 +1 @@
-89e5720a8d8d46d4e2f16f15678e91336117e64abc977174e2b345a30308d0d2
\ No newline at end of file
+9406c0a685fd5ff3516a66402b0514a1440652822a5eecf0b7af85929f3079e8
\ No newline at end of file
index ff05ee78c5927520e9a12f821ea10fc7c9d283e6..0d3de8ef49673cdd046692dac3e275ac74e414e9 100644 (file)
 #
 # Test cases for the sqlite_unsupported_offset() function.
 #
+# Some of the tests in this file depend on the exact placement of content
+# within b-tree pages.  Such placement is at the implementations discretion,
+# and so it is possible for results to change from one release to the next.
+#
 set testdir [file dirname $argv0]
 source $testdir/tester.tcl
 ifcapable !offset_sql_func {
@@ -19,26 +23,64 @@ ifcapable !offset_sql_func {
 }
 
 do_execsql_test func6-100 {
+  PRAGMA page_size=4096;
+  PRAGMA auto_vacuum=NONE;
   CREATE TABLE t1(a,b,c,d);
   WITH RECURSIVE c(x) AS (VALUES(1) UNION ALL SELECT x+1 FROM c WHERE x<100)
    INSERT INTO t1(a,b,c,d) SELECT printf('abc%03x',x), x, 1000-x, NULL FROM c;
+  CREATE INDEX t1a ON t1(a);
+  CREATE INDEX t1bc ON t1(b,c);
+  CREATE TABLE t2(x TEXT PRIMARY KEY, y) WITHOUT ROWID;
+  INSERT INTO t2(x,y) SELECT a, b FROM t1;
 }
 do_execsql_test func6-110 {
-  SELECT a, typeof(sqlite_unsupported_offset(a)) FROM t1
+  SELECT a, sqlite_unsupported_offset(d)/4096 + 1,
+            sqlite_unsupported_offset(d)%4096 FROM t1
    ORDER BY rowid LIMIT 2;
-} {abc001 integer abc002 integer}
+} {abc001 2 4084 abc002 2 4069}
 do_execsql_test func6-120 {
   SELECT a, typeof(sqlite_unsupported_offset(+a)) FROM t1
    ORDER BY rowid LIMIT 2;
 } {abc001 null abc002 null}
 do_execsql_test func6-130 {
-  CREATE INDEX t1a ON t1(a);
-  SELECT a, typeof(sqlite_unsupported_offset(a)) FROM t1
+  SELECT a, sqlite_unsupported_offset(a)/4096+1, 
+         sqlite_unsupported_offset(a)%4096
+   FROM t1
    ORDER BY a LIMIT 2;
-} {abc001 integer abc002 integer}
+} {abc001 3 4087 abc002 3 4076}
 do_execsql_test func6-140 {
-  SELECT a, typeof(sqlite_unsupported_offset(a)) FROM t1 NOT INDEXED
+  SELECT a, sqlite_unsupported_offset(d)/4096+1, 
+         sqlite_unsupported_offset(d)%4096
+   FROM t1
    ORDER BY a LIMIT 2;
-} {abc001 integer abc002 integer}
+} {abc001 2 4084 abc002 2 4069}
+do_execsql_test func6-150 {
+  SELECT a,
+         sqlite_unsupported_offset(a)/4096+1, 
+         sqlite_unsupported_offset(a)%4096,
+         sqlite_unsupported_offset(d)/4096+1, 
+         sqlite_unsupported_offset(d)%4096
+   FROM t1
+   ORDER BY a LIMIT 2;
+} {abc001 3 4087 2 4084 abc002 3 4076 2 4069}
+do_execsql_test func6-160 {
+  SELECT b,
+         sqlite_unsupported_offset(b)/4096+1, 
+         sqlite_unsupported_offset(b)%4096,
+         sqlite_unsupported_offset(c)/4096+1, 
+         sqlite_unsupported_offset(c)%4096,
+         sqlite_unsupported_offset(d)/4096+1, 
+         sqlite_unsupported_offset(d)%4096
+   FROM t1
+   ORDER BY b LIMIT 2;
+} {1 4 4090 4 4090 2 4084 2 4 4081 4 4081 2 4069}
+
+
+do_execsql_test func6-200 {
+  SELECT y, sqlite_unsupported_offset(y)/4096+1,
+         sqlite_unsupported_offset(y)%4096
+   FROM t2
+   ORDER BY x LIMIT 2;
+} {1 5 4087 2 5 4076}
 
 finish_test