summaryrefslogtreecommitdiffstats
path: root/tests/clock.test
diff options
context:
space:
mode:
authorKevin B Kenny <kennykb@acm.org>2004-05-14 21:43:28 (GMT)
committerKevin B Kenny <kennykb@acm.org>2004-05-14 21:43:28 (GMT)
commitd3dd7920cd97f2c402d6fdc5c4acdb3e60c8f9cb (patch)
tree1bd25818dd481cc051c619d9993b650758201a89 /tests/clock.test
parenta87aa8a1be2c89d9174660ca97ea533474e73901 (diff)
downloadtcl-d3dd7920cd97f2c402d6fdc5c4acdb3e60c8f9cb.zip
tcl-d3dd7920cd97f2c402d6fdc5c4acdb3e60c8f9cb.tar.gz
tcl-d3dd7920cd97f2c402d6fdc5c4acdb3e60c8f9cb.tar.bz2
2004-05-14 Kevin B. Kenny <kennykb@acm.org>
* generic/tclInt.decls: Promoted TclpLocaltime and TclpGmtime * generic/tclIntDecls.h: from Unix-specific stubs to the generic * generic/tclIntPlatDecls.h: internal Stubs table. Reran 'genstubs' * generic/tclStubInit.c: * unix/tclUnixPort.h: * generic/tclClock.c: Changed a buggy 'GMT' timezone specification to the correct 'GMT0'. [Bug #922848] * unix/tclUnixThrd.c: Moved TclpGmtime and TclpLocaltime to unix/tclUnixTime.c where they belong. * unix/tclUnixTime.c (TclpGmtime, TclpLocaltime, TclpGetTimeZone, ThreadSafeGMTime [removed], ThreadSafeLocalTime [removed], SetTZIfNecessary, CleanupMemory): Restructured to make sure that the same mutex protects all calls to localtime, gmtime, and tzset. Added a check in front of those calls to make sure that the TZ env var hasn't changed since the last call to tzset, and repeat tzset if necessary. [Bug #942078] Removed a buggy test of the Daylight Saving Time information in 'gettimeofday' in favor of applying 'localtime' to a known value. [Bug #922848] * tests/clock.test (clock-3.14): Added test to make sure that changes to $env(TZ) take effect immediately. * win/tclWinTime.c (TclpLocaltime, TclpGmtime): Added porting layer for 'localtime' and 'gmtime' calls.
Diffstat (limited to 'tests/clock.test')
-rw-r--r--tests/clock.test23
1 files changed, 22 insertions, 1 deletions
diff --git a/tests/clock.test b/tests/clock.test
index ea7310e..5f1b028 100644
--- a/tests/clock.test
+++ b/tests/clock.test
@@ -10,7 +10,7 @@
# See the file "license.terms" for information on usage and redistribution
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
#
-# RCS: @(#) $Id: clock.test,v 1.25 2004/04/15 21:06:39 dkf Exp $
+# RCS: @(#) $Id: clock.test,v 1.26 2004/05/14 21:43:29 kennykb Exp $
set env(LC_TIME) POSIX
@@ -173,6 +173,27 @@ test clock-3.13 {clock format with non-ASCII character in the format string} {
set res
} "\u00c4"
+# Bug 942078
+
+test clock-3.14 {change of time zone} -setup {
+ catch { unset oldTZ }
+ if { [info exists env(TZ)] } {
+ set oldTZ $env(TZ)
+ }
+} -body {
+ set env(TZ) PST8PDT
+ set s [clock format 0 -format %H%M]
+ set env(TZ) GMT0
+ append s -[clock format 0 -format %H%M]
+} -cleanup {
+ if { [info exists oldTZ] } {
+ set env(TZ) $oldTZ
+ unset oldTZ
+ } else {
+ unset env(TZ)
+ }
+} -result {1600-0000}
+
# clock scan
test clock-4.1 {clock scan tests} {
list [catch {clock scan} msg] $msg