mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 18:07:58 +00:00
tests: use future::join instead of future::select (#2813)
* tests/av-store: use future::join instead of future::select * tests/backing: use future::join instead of future::select * tests/provisioner: use future::join instead of future::select * tests/av-dist: use future::join instead of future::select * tests/av-recovery: use future::join instead of future::select * tests/bridge: use future::join instead of future::select * tests/collator-protocol: use future::join instead of future::select * tests/stmt-dist: use future::join instead of future::select * fix tests
This commit is contained in:
@@ -27,7 +27,7 @@ use super::*;
|
||||
|
||||
type VirtualOverseer = test_helpers::TestSubsystemContextHandle<ApprovalDistributionMessage>;
|
||||
|
||||
fn test_harness<T: Future<Output = ()>>(
|
||||
fn test_harness<T: Future<Output = VirtualOverseer>>(
|
||||
mut state: State,
|
||||
test_fn: impl FnOnce(VirtualOverseer) -> T,
|
||||
) -> State {
|
||||
@@ -51,7 +51,14 @@ fn test_harness<T: Future<Output = ()>>(
|
||||
futures::pin_mut!(test_fut);
|
||||
futures::pin_mut!(subsystem);
|
||||
|
||||
executor::block_on(future::select(test_fut, subsystem));
|
||||
executor::block_on(future::join(async move {
|
||||
let mut overseer = test_fut.await;
|
||||
overseer
|
||||
.send(FromOverseer::Signal(OverseerSignal::Conclude))
|
||||
.timeout(TIMEOUT)
|
||||
.await
|
||||
.expect("Conclude send timeout");
|
||||
}, subsystem));
|
||||
}
|
||||
|
||||
state
|
||||
@@ -262,6 +269,7 @@ fn try_import_the_same_assignment() {
|
||||
.is_none(),
|
||||
"no message should be sent",
|
||||
);
|
||||
virtual_overseer
|
||||
});
|
||||
}
|
||||
|
||||
@@ -342,6 +350,7 @@ fn spam_attack_results_in_negative_reputation_change() {
|
||||
expect_reputation_change(overseer, peer, COST_UNEXPECTED_MESSAGE).await;
|
||||
expect_reputation_change(overseer, peer, BENEFIT_VALID_MESSAGE).await;
|
||||
}
|
||||
virtual_overseer
|
||||
});
|
||||
}
|
||||
|
||||
@@ -423,6 +432,7 @@ fn peer_sending_us_the_same_we_just_sent_them_is_ok() {
|
||||
|
||||
// now we should
|
||||
expect_reputation_change(overseer, peer, COST_DUPLICATE_MESSAGE).await;
|
||||
virtual_overseer
|
||||
});
|
||||
}
|
||||
|
||||
@@ -509,6 +519,7 @@ fn import_approval_happy_path() {
|
||||
assert_eq!(approvals.len(), 1);
|
||||
}
|
||||
);
|
||||
virtual_overseer
|
||||
});
|
||||
}
|
||||
|
||||
@@ -588,6 +599,7 @@ fn import_approval_bad() {
|
||||
);
|
||||
|
||||
expect_reputation_change(overseer, &peer_b, COST_INVALID_MESSAGE).await;
|
||||
virtual_overseer
|
||||
});
|
||||
}
|
||||
|
||||
@@ -626,6 +638,7 @@ fn update_our_view() {
|
||||
|
||||
let msg = ApprovalDistributionMessage::NewBlocks(vec![meta_a, meta_b, meta_c]);
|
||||
overseer_send(overseer, msg).await;
|
||||
virtual_overseer
|
||||
});
|
||||
|
||||
assert!(state.blocks_by_number.get(&1).is_some());
|
||||
@@ -639,6 +652,7 @@ fn update_our_view() {
|
||||
let overseer = &mut virtual_overseer;
|
||||
// finalize a block
|
||||
overseer_signal_block_finalized(overseer, 2).await;
|
||||
virtual_overseer
|
||||
});
|
||||
|
||||
assert!(state.blocks_by_number.get(&1).is_none());
|
||||
@@ -652,6 +666,7 @@ fn update_our_view() {
|
||||
let overseer = &mut virtual_overseer;
|
||||
// finalize a very high block
|
||||
overseer_signal_block_finalized(overseer, 4_000_000_000).await;
|
||||
virtual_overseer
|
||||
});
|
||||
|
||||
assert!(state.blocks_by_number.get(&3).is_none());
|
||||
@@ -726,6 +741,7 @@ fn update_peer_view() {
|
||||
assert_eq!(assignments.len(), 1);
|
||||
}
|
||||
);
|
||||
virtual_overseer
|
||||
});
|
||||
|
||||
assert_eq!(state.peer_views.get(peer).map(|v| v.finalized_number), Some(0));
|
||||
@@ -773,6 +789,7 @@ fn update_peer_view() {
|
||||
assert_eq!(assignments[0].0, cert_c);
|
||||
}
|
||||
);
|
||||
virtual_overseer
|
||||
});
|
||||
|
||||
assert_eq!(state.peer_views.get(peer).map(|v| v.finalized_number), Some(2));
|
||||
@@ -799,6 +816,7 @@ fn update_peer_view() {
|
||||
NetworkBridgeEvent::PeerViewChange(peer.clone(), View::with_finalized(finalized_number))
|
||||
)
|
||||
).await;
|
||||
virtual_overseer
|
||||
});
|
||||
|
||||
assert_eq!(state.peer_views.get(peer).map(|v| v.finalized_number), Some(finalized_number));
|
||||
@@ -909,6 +927,7 @@ fn import_remotely_then_locally() {
|
||||
.is_none(),
|
||||
"no message should be sent",
|
||||
);
|
||||
virtual_overseer
|
||||
});
|
||||
}
|
||||
|
||||
@@ -994,5 +1013,6 @@ fn sends_assignments_even_when_state_is_approved() {
|
||||
.is_none(),
|
||||
"no message should be sent",
|
||||
);
|
||||
virtual_overseer
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user