diff --git a/crates/primitives/src/block.rs b/crates/primitives/src/block.rs index bcf5ad71abed..2891d1285faa 100644 --- a/crates/primitives/src/block.rs +++ b/crates/primitives/src/block.rs @@ -503,17 +503,22 @@ impl SealedBlockWithSenders { } #[cfg(any(test, feature = "arbitrary"))] -impl<'a> arbitrary::Arbitrary<'a> for SealedBlockWithSenders { +impl<'a, B> arbitrary::Arbitrary<'a> for SealedBlockWithSenders +where + B: reth_primitives_traits::Block + arbitrary::Arbitrary<'a>, +{ fn arbitrary(u: &mut arbitrary::Unstructured<'a>) -> arbitrary::Result { - let block: SealedBlock = SealedBlock::arbitrary(u)?; + let block = B::arbitrary(u)?; let senders = block - .body - .transactions + .body() + .transactions() .iter() .map(|tx| tx.recover_signer().unwrap()) .collect::>(); + let (header, body) = block.split(); + let block = SealedBlock::new(SealedHeader::seal(header), body); Ok(Self { block, senders }) } }