From 08bc38ddffa19cf039b30e1d18edae3abb33d377 Mon Sep 17 00:00:00 2001 From: girazoki Date: Thu, 21 Apr 2022 10:23:20 +0200 Subject: [PATCH] Implement set_block_number for runtime-bencmarks in RelayBlockNumberProiver (#1187) --- pallets/parachain-system/Cargo.toml | 4 ++++ pallets/parachain-system/src/lib.rs | 7 +++++++ 2 files changed, 11 insertions(+) diff --git a/pallets/parachain-system/Cargo.toml b/pallets/parachain-system/Cargo.toml index 6b220da5d7..5d08818813 100644 --- a/pallets/parachain-system/Cargo.toml +++ b/pallets/parachain-system/Cargo.toml @@ -73,3 +73,7 @@ std = [ "sp-trie/std", "xcm/std" ] + +runtime-benchmarks = [ + "sp-runtime/runtime-benchmarks" +] \ No newline at end of file diff --git a/pallets/parachain-system/src/lib.rs b/pallets/parachain-system/src/lib.rs index 2eb242e738..44da67e5dd 100644 --- a/pallets/parachain-system/src/lib.rs +++ b/pallets/parachain-system/src/lib.rs @@ -1047,4 +1047,11 @@ impl BlockNumberProvider for RelaychainBlockNumberProvider { .map(|d| d.relay_parent_number) .unwrap_or_default() } + #[cfg(feature = "runtime-benchmarks")] + fn set_block_number(block: Self::BlockNumber) { + if let Some(mut validation_data) = Pallet::::validation_data() { + validation_data.relay_parent_number = block; + ValidationData::::put(validation_data) + } + } }