diff --git a/testing/integration-tests/src/utils/mod.rs b/testing/integration-tests/src/utils/mod.rs index ee668886c0..dc5215feba 100644 --- a/testing/integration-tests/src/utils/mod.rs +++ b/testing/integration-tests/src/utils/mod.rs @@ -10,4 +10,4 @@ mod wait_for_blocks; pub use context::*; pub use node_proc::TestNodeProcess; pub use tx_retries::*; -pub use wait_for_blocks::wait_for_blocks; +pub use wait_for_blocks::*; diff --git a/testing/integration-tests/src/utils/node_proc.rs b/testing/integration-tests/src/utils/node_proc.rs index 419ce50b57..0531b89102 100644 --- a/testing/integration-tests/src/utils/node_proc.rs +++ b/testing/integration-tests/src/utils/node_proc.rs @@ -241,7 +241,10 @@ async fn build_light_client(proc: &SubstrateNode) -> Result(api: &impl OnlineClientT) { - let mut sub = api.blocks().subscribe_finalized().await.unwrap(); - // The current finalized block: - sub.next().await; - // The next one: - sub.next().await; + // The current finalized block and the next block. + wait_for_number_of_blocks(api, 2).await; +} + +/// Wait for a number of blocks to be produced. +pub async fn wait_for_number_of_blocks( + api: &impl OnlineClientT, + number_of_blocks: usize, +) { + let mut sub = api.blocks().subscribe_finalized().await.unwrap(); + + for _ in 0..number_of_blocks { + sub.next().await; + } }