mirror of
https://github.com/hl-archive-node/nanoreth.git
synced 2025-12-06 19:09:54 +00:00
chore(net): test utils improvements (#8493)
This commit is contained in:
@ -30,15 +30,15 @@ pub(crate) fn zip_blocks<'a>(
|
||||
.collect()
|
||||
}
|
||||
|
||||
pub(crate) fn create_raw_bodies<'a>(
|
||||
headers: impl Iterator<Item = &'a SealedHeader>,
|
||||
pub(crate) fn create_raw_bodies(
|
||||
headers: impl IntoIterator<Item = SealedHeader>,
|
||||
bodies: &mut HashMap<B256, BlockBody>,
|
||||
) -> Vec<Block> {
|
||||
headers
|
||||
.into_iter()
|
||||
.map(|header| {
|
||||
let body = bodies.remove(&header.hash()).expect("body exists");
|
||||
body.create_block(header.as_ref().clone())
|
||||
body.create_block(header.unseal())
|
||||
})
|
||||
.collect()
|
||||
}
|
||||
|
||||
@ -48,15 +48,16 @@ pub(crate) async fn generate_bodies_file(
|
||||
range: RangeInclusive<u64>,
|
||||
) -> (tokio::fs::File, Vec<SealedHeader>, HashMap<B256, BlockBody>) {
|
||||
let (headers, bodies) = generate_bodies(range);
|
||||
let raw_block_bodies = create_raw_bodies(headers.clone().iter(), &mut bodies.clone());
|
||||
let raw_block_bodies = create_raw_bodies(headers.iter().cloned(), &mut bodies.clone());
|
||||
|
||||
let file: File = tempfile::tempfile().unwrap().into();
|
||||
let mut writer = FramedWrite::new(file, BlockFileCodec);
|
||||
|
||||
// rlp encode one after the other
|
||||
for block in raw_block_bodies {
|
||||
writer.send(block).await.unwrap();
|
||||
writer.feed(block).await.unwrap();
|
||||
}
|
||||
writer.flush().await.unwrap();
|
||||
|
||||
// get the file back
|
||||
let mut file: File = writer.into_inner();
|
||||
|
||||
Reference in New Issue
Block a user