Auto merge of #3379 - RalfJung:time-with-isolation, r=saethlin

explain time-with-isolation test better

Fixes https://github.com/rust-lang/miri/issues/3377

`@saethlin` do you think this is better?
This commit is contained in:
bors 2024-03-14 14:49:41 +00:00
commit 76d364bfdc
4 changed files with 14 additions and 10 deletions

View File

@ -24,7 +24,8 @@ fn test_time_passes() {
assert_eq!(now2 - diff, now1);
// The virtual clock is deterministic and I got 15ms on a 64-bit Linux machine. However, this
// changes according to the platform so we use an interval to be safe. This should be updated
// if `NANOSECONDS_PER_BASIC_BLOCK` changes.
// if `NANOSECONDS_PER_BASIC_BLOCK` changes. It may also need updating if the standard library
// code that runs in the loop above changes.
assert!(diff.as_millis() > 5);
assert!(diff.as_millis() < 20);
}
@ -37,8 +38,18 @@ fn test_block_for_one_second() {
while Instant::now() < end {}
}
/// Ensures that we get the same behavior across all targets.
fn test_deterministic() {
let begin = Instant::now();
for _ in 0..100_000 {}
let time = begin.elapsed();
println!("The loop took around {}s", time.as_secs());
println!("(It's fine for this number to change when you `--bless` this test.)")
}
fn main() {
test_time_passes();
test_block_for_one_second();
test_sleep();
test_deterministic();
}

View File

@ -0,0 +1,2 @@
The loop took around 7s
(It's fine for this number to change when you `--bless` this test.)

View File

@ -1,8 +0,0 @@
use std::time::Instant;
fn main() {
let begin = Instant::now();
for _ in 0..100_000 {}
let time = begin.elapsed();
println!("The loop took around {}s", time.as_secs());
}

View File

@ -1 +0,0 @@
The loop took around 7s