summaryrefslogtreecommitdiffstats
path: root/tests/winTime.test
diff options
context:
space:
mode:
authorKevin B Kenny <kennykb@acm.org>2003-04-12 20:11:33 (GMT)
committerKevin B Kenny <kennykb@acm.org>2003-04-12 20:11:33 (GMT)
commitb0cc421ee0a6c1691d7db034c52ae9fcb5295627 (patch)
treedfa1a81b176b70021b0ecfa66e96c7a6a66d2ba1 /tests/winTime.test
parent47554fcd67f382566a72813c4b11bda27ecfb201 (diff)
downloadtcl-b0cc421ee0a6c1691d7db034c52ae9fcb5295627.zip
tcl-b0cc421ee0a6c1691d7db034c52ae9fcb5295627.tar.gz
tcl-b0cc421ee0a6c1691d7db034c52ae9fcb5295627.tar.bz2
Fixed Bug 710310 (duplicate test numbers in clock.test). Made major
changes to tclWinTime.c and related code to improve loop filter stability.
Diffstat (limited to 'tests/winTime.test')
-rw-r--r--tests/winTime.test28
1 files changed, 9 insertions, 19 deletions
diff --git a/tests/winTime.test b/tests/winTime.test
index 8645fc8..ea663e5 100644
--- a/tests/winTime.test
+++ b/tests/winTime.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: winTime.test,v 1.8 2003/02/27 23:47:01 hobbs Exp $
+# RCS: @(#) $Id: winTime.test,v 1.8.2.1 2003/04/12 20:11:34 kennykb Exp $
if {[lsearch [namespace children] ::tcltest] == -1} {
package require tcltest
@@ -36,24 +36,26 @@ test winTime-1.2 {TclpGetDate} {pcOnly} {
} {1969}
# Next test tries to make sure that the Tcl clock stays in step
-# with the Windows clock. 3000 iterations really isn't enough,
-# but how many does a tester have patience for?
+# with the Windows clock. 30 sec really isn't enough,
+# but how much time does a tester have patience for?
test winTime-2.1 {Synchronization of Tcl and Windows clocks} {testwinclock} {
# May fail due to OS/hardware discrepancies. See:
# http://support.microsoft.com/default.aspx?scid=kb;en-us;274323
set failed {}
set ok 1
- for { set i 0 } { $i < 3000 } { incr i } {
- foreach { sys_sec sys_usec tcl_sec tcl_usec } [testwinclock] {}
+ foreach start_sec [testwinclock] break
+ while { 1 } {
+ foreach { sys_sec sys_usec tcl_sec tcl_usec } [testwinclock] break
set diff [expr { $tcl_sec - $sys_sec
+ 1.0e-6 * ( $tcl_usec - $sys_usec ) }]
- if { abs($diff) > 0.02 } {
+ if { abs($diff) > 0.06 } {
set failed "Tcl clock differs from system clock by $diff sec"
break
} else {
- after 10
+ testwinsleep 1
}
+ if { $sys_sec - $start_sec >= 30 } break
}
set failed
} {}
@@ -61,15 +63,3 @@ test winTime-2.1 {Synchronization of Tcl and Windows clocks} {testwinclock} {
# cleanup
::tcltest::cleanupTests
return
-
-
-
-
-
-
-
-
-
-
-
-