Index: third_party/sqlite/src/test/date.test |
diff --git a/third_party/sqlite/src/test/date.test b/third_party/sqlite/src/test/date.test |
index 9bfec12626b955bcc241dd03d76071e4eae4984a..b1d1c677c1c17dba6432e31bf12e221cf4aaf051 100644 |
--- a/third_party/sqlite/src/test/date.test |
+++ b/third_party/sqlite/src/test/date.test |
@@ -151,7 +151,7 @@ datetest 3.2.1 {strftime('pre%fpost','2003-10-31 12:34:56.432')} pre56.432post |
datetest 3.2.2 {strftime('%f','2003-10-31 12:34:59.9999999')} 59.999 |
datetest 3.3 {strftime('%H','2003-10-31 12:34:56.432')} 12 |
datetest 3.4 {strftime('%j','2003-10-31 12:34:56.432')} 304 |
-datetest 3.5 {strftime('%J','2003-10-31 12:34:56.432')} 2452944.02426426 |
+datetest 3.5 {strftime('%J','2003-10-31 12:34:56.432')} 2452944.024264259 |
datetest 3.6 {strftime('%m','2003-10-31 12:34:56.432')} 10 |
datetest 3.7 {strftime('%M','2003-10-31 12:34:56.432')} 34 |
datetest 3.8.1 {strftime('%s','2003-10-31 12:34:56.432')} 1067603696 |
@@ -528,4 +528,27 @@ if {0==[sqlite3 -has-codec]} { |
} {1} |
} |
} |
+ |
+# Verify that multiple calls to date functions with 'now' return the |
+# same answer. |
+# |
+# EVIDENCE-OF: R-34818-13664 The 'now' argument to date and time |
+# functions always returns exactly the same value for multiple |
+# invocations within the same sqlite3_step() call. |
+# |
+proc sleeper {} {after 100} |
+do_test date-15.1 { |
+ db func sleeper sleeper |
+ db eval { |
+ SELECT c - a FROM (SELECT julianday('now') AS a, |
+ sleeper(), julianday('now') AS c); |
+ } |
+} {0.0} |
+do_test date-15.2 { |
+ db eval { |
+ SELECT a==b FROM (SELECT current_timestamp AS a, |
+ sleeper(), current_timestamp AS b); |
+ } |
+} {1} |
+ |
finish_test |