tests: fix msvc transient failures when sleep_ms takes longer
parent
51da324465
commit
84785bbb59
|
@ -1,6 +1,9 @@
|
||||||
import time
|
import time
|
||||||
|
|
||||||
fn test_stopwatch_works_as_intended(){
|
// NB: on CI jobs, especially msvc ones, sleep_ms may sleep for much more
|
||||||
|
// time than you have specified. To avoid false positives from CI test
|
||||||
|
// failures, some of the asserts will be run only if you pass `-d stopwatch`
|
||||||
|
fn test_stopwatch_works_as_intended() {
|
||||||
sw := time.new_stopwatch()
|
sw := time.new_stopwatch()
|
||||||
// sample code that you want to measure:
|
// sample code that you want to measure:
|
||||||
println('Hello world')
|
println('Hello world')
|
||||||
|
@ -10,19 +13,23 @@ fn test_stopwatch_works_as_intended(){
|
||||||
assert sw.elapsed().nanoseconds() > 0
|
assert sw.elapsed().nanoseconds() > 0
|
||||||
}
|
}
|
||||||
|
|
||||||
fn test_stopwatch_time_between_pause_and_start_should_be_skipped_in_elapsed(){
|
fn test_stopwatch_time_between_pause_and_start_should_be_skipped_in_elapsed() {
|
||||||
sw := time.new_stopwatch()
|
sw := time.new_stopwatch()
|
||||||
time.sleep_ms(10) // A
|
time.sleep_ms(10) // A
|
||||||
//eprintln('${sw.elapsed().milliseconds()}ms')
|
// eprintln('${sw.elapsed().milliseconds()}ms')
|
||||||
assert sw.elapsed().milliseconds() >= 10
|
assert sw.elapsed().milliseconds() >= 10
|
||||||
sw.pause()
|
sw.pause()
|
||||||
time.sleep_ms(10)
|
time.sleep_ms(10)
|
||||||
//eprintln('${sw.elapsed().milliseconds()}ms')
|
// eprintln('${sw.elapsed().milliseconds()}ms')
|
||||||
assert sw.elapsed().milliseconds() >= 10
|
assert sw.elapsed().milliseconds() >= 10
|
||||||
assert sw.elapsed().milliseconds() < 20
|
$if stopwatch {
|
||||||
|
assert sw.elapsed().milliseconds() < 20
|
||||||
|
}
|
||||||
sw.start()
|
sw.start()
|
||||||
time.sleep_ms(10) // B
|
time.sleep_ms(10) // B
|
||||||
// Here, sw.elapsed() should be ~10ms (from A) + 10ms (from B) = 20ms
|
// Here, sw.elapsed() should be ~10ms (from A) + ~10ms (from B) >= 20ms
|
||||||
assert sw.elapsed().milliseconds() >= 20
|
assert sw.elapsed().milliseconds() >= 20
|
||||||
assert sw.elapsed().milliseconds() < 30
|
$if stopwatch {
|
||||||
|
assert sw.elapsed().milliseconds() < 30
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue