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

Unified Diff: third_party/sqlite/src/test/trace.test

Issue 6990047: Import SQLite 3.7.6.3. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 7 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/sqlite/src/test/tkt3992.test ('k') | third_party/sqlite/src/test/trace2.test » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/sqlite/src/test/trace.test
diff --git a/third_party/sqlite/src/test/trace.test b/third_party/sqlite/src/test/trace.test
index 762c1d738bf3e0419176e4ca5e30aa4080005b27..ce5a2d712a4ea364bde3463262a8efa182ae1876 100644
--- a/third_party/sqlite/src/test/trace.test
+++ b/third_party/sqlite/src/test/trace.test
@@ -59,12 +59,12 @@ do_test trace-2.1 {
db trace trace_proc
proc trace_proc sql {
global TRACE_OUT
- set TRACE_OUT $sql
+ lappend TRACE_OUT [string trim $sql]
}
set TRACE_OUT {}
sqlite3_step $STMT
set TRACE_OUT
-} {INSERT INTO t1 VALUES(2,3)}
+} {{INSERT INTO t1 VALUES(2,3)}}
do_test trace-2.2 {
set TRACE_OUT {}
sqlite3_reset $STMT
@@ -73,15 +73,22 @@ do_test trace-2.2 {
do_test trace-2.3 {
sqlite3_step $STMT
set TRACE_OUT
-} {INSERT INTO t1 VALUES(2,3)}
+} {{INSERT INTO t1 VALUES(2,3)}}
do_test trace-2.4 {
+ set TRACE_OUT {}
execsql {SELECT * FROM t1}
} {1 2 2 3 2 3}
do_test trace-2.5 {
set TRACE_OUT
-} {SELECT * FROM t1}
+} {{SELECT * FROM t1}}
catch {sqlite3_finalize $STMT}
+do_test trace-2.6 {
+ set TRACE_OUT {}
+ db eval VACUUM
+ set TRACE_OUT
+} {VACUUM}
+
# Similar tests, but this time for profiling.
#
do_test trace-3.1 {
@@ -122,12 +129,12 @@ do_test trace-4.1 {
db trace trace_proc
proc profile_proc {sql tm} {
global TRACE_OUT
- set TRACE_OUT $sql
+ lappend TRACE_OUT [string trim $sql]
}
set TRACE_OUT {}
sqlite3_step $STMT
set TRACE_OUT
-} {INSERT INTO t2 VALUES(2,3)}
+} {{INSERT INTO t2 VALUES(2,3)}}
do_test trace-4.2 {
set TRACE_OUT {}
sqlite3_reset $STMT
@@ -136,13 +143,14 @@ do_test trace-4.2 {
do_test trace-4.3 {
sqlite3_step $STMT
set TRACE_OUT
-} {INSERT INTO t2 VALUES(2,3)}
+} {{INSERT INTO t2 VALUES(2,3)}}
do_test trace-4.4 {
+ set TRACE_OUT {}
execsql {SELECT * FROM t1}
} {1 2 2 3 2 3}
do_test trace-4.5 {
set TRACE_OUT
-} {SELECT * FROM t1}
+} {{SELECT * FROM t1}}
catch {sqlite3_finalize $STMT}
# Trigger tracing.
@@ -168,4 +176,70 @@ ifcapable trigger {
} {{UPDATE t1 SET a=a+1;} {-- TRIGGER r1t1} {-- TRIGGER r1t2} {-- TRIGGER r1t1} {-- TRIGGER r1t2} {-- TRIGGER r1t1} {-- TRIGGER r1t2}}
}
+# With 3.6.21, we add the ability to expand host parameters in the trace
+# output. Test this feature.
+#
+do_test trace-6.1 {
+ set ::t6int [expr {3+3}]
+ set ::t6real [expr {1.5*4.0}]
+ set ::t6str {test-six y'all}
+ db eval {SELECT x'3031323334' AS x} {set ::t6blob $x}
+ unset -nocomplain t6null
+ set TRACE_OUT {}
+ execsql {SELECT $::t6int, $::t6real, $t6str, $t6blob, $t6null}
+} {6 6.0 {test-six y'all} 01234 {}}
+do_test trace-6.2 {
+ set TRACE_OUT
+} {{SELECT 6, 6.0, 'test-six y''all', x'3031323334', NULL}}
+do_test trace-6.3 {
+ set TRACE_OUT {}
+ execsql {SELECT $::t6int, ?1, $::t6int}
+} {6 6 6}
+do_test trace-6.4 {
+ set TRACE_OUT
+} {{SELECT 6, 6, 6}}
+do_test trace-6.5 {
+ execsql {CREATE TABLE t6([$::t6int],"?1"); INSERT INTO t6 VALUES(1,2)}
+ set TRACE_OUT {}
+ execsql {SELECT '$::t6int', [$::t6int], $::t6int, ?1, "?1", $::t6int FROM t6}
+} {{$::t6int} 1 6 6 2 6}
+do_test trace-6.6 {
+ set TRACE_OUT
+} {{SELECT '$::t6int', [$::t6int], 6, 6, "?1", 6 FROM t6}}
+
+# Do these same tests with a UTF16 database.
+#
+do_test trace-6.100 {
+ db close
+ sqlite3 db :memory:
+ db eval {
+ PRAGMA encoding=UTF16be;
+ CREATE TABLE t6([$::t6str],"?1");
+ INSERT INTO t6 VALUES(1,2);
+ }
+ db trace trace_proc
+ set TRACE_OUT {}
+ execsql {SELECT '$::t6str', [$::t6str], $::t6str, ?1, "?1", $::t6str FROM t6}
+} {{$::t6str} 1 {test-six y'all} {test-six y'all} 2 {test-six y'all}}
+do_test trace-6.101 {
+ set TRACE_OUT
+} {{SELECT '$::t6str', [$::t6str], 'test-six y''all', 'test-six y''all', "?1", 'test-six y''all' FROM t6}}
+
+do_test trace-6.200 {
+ db close
+ sqlite3 db :memory:
+ db eval {
+ PRAGMA encoding=UTF16le;
+ CREATE TABLE t6([$::t6str],"?1");
+ INSERT INTO t6 VALUES(1,2);
+ }
+ db trace trace_proc
+ set TRACE_OUT {}
+ execsql {SELECT '$::t6str', [$::t6str], $::t6str, ?1, "?1", $::t6str FROM t6}
+} {{$::t6str} 1 {test-six y'all} {test-six y'all} 2 {test-six y'all}}
+do_test trace-6.201 {
+ set TRACE_OUT
+} {{SELECT '$::t6str', [$::t6str], 'test-six y''all', 'test-six y''all', "?1", 'test-six y''all' FROM t6}}
+
+
finish_test
« no previous file with comments | « third_party/sqlite/src/test/tkt3992.test ('k') | third_party/sqlite/src/test/trace2.test » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698