diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/simtest/remakes.rs | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/simtest/remakes.rs b/src/simtest/remakes.rs index ec83c40..95c5697 100644 --- a/src/simtest/remakes.rs +++ b/src/simtest/remakes.rs @@ -566,6 +566,19 @@ async fn abort_from_a_node_with_its_clock_off_is_refused() { move || async move { c_ref.clock_skew().await.off }, ) .await; + // And a, the proposer, that its own isn't: it compares with both b and c, so c alone + // is no majority. Had it a PONG from c but none from b yet, c's clock would be most + // of its peers', and a's proposal refused as from a clock off. + let a_ref = &a; + sim.wait_until( + "a knows its clock is fine", + Duration::from_secs(60), + move || async move { + let skew = a_ref.clock_skew().await; + skew.peers >= 2 && !skew.off + }, + ) + .await; // No vote reaches a, so its remake stays undecided for its settle period. let cut = LinkParams { |
