Fix a case where a corrupt stat4 record could go unrecognized due to integer overflow.
[sqlite.git] / test / date4.test
blob56a9090b1b06d2057b6e3227686c3d955a643db0
1 # 2023-08-29
3 # The author disclaims copyright to this source code.  In place of
4 # a legal notice, here is a blessing:
6 #    May you do good and not evil.
7 #    May you find forgiveness for yourself and forgive others.
8 #    May you share freely, never taking more than you give.
10 #***********************************************************************
12 # Test cases for the strftime() SQL function.  Comparisons against the
13 # C-library strftime() function.
15 set testdir [file dirname $argv0]
16 source $testdir/tester.tcl
18 # Skip this whole file if date and time functions are omitted
19 # at compile-time
21 ifcapable {!datetime} {
22   finish_test
23   return
26 if {$tcl_platform(os)=="Linux"} {
27   set FMT {%d,%e,%F,%H,%k,%I,%l,%j,%m,%M,%u,%w,%W,%Y,%%,%P,%p,%U,%V,%G,%g}
28 } else {
29   set FMT {%d,%e,%F,%H,%I,%j,%p,%R,%u,%w,%W,%%}
31 for {set i 0} {$i<=24858} {incr i} {
32   set TS [expr {$i*86390}]
33   do_execsql_test date4-$i {
34     SELECT strftime($::FMT,$::TS,'unixepoch');
35   } [list [strftime $FMT $TS]]
38 finish_test