fully cover commit_block
This commit is contained in:
parent
74af22e5ca
commit
dcc19f6b25
|
@ -282,4 +282,32 @@ mod tests {
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
// This test gives full coverage for `take_chain_if`
|
||||||
|
fn commit_block_extending_best_chain_doesnt_drop_worst_chains() -> Result<()> {
|
||||||
|
zebra_test::init();
|
||||||
|
|
||||||
|
let block2: Arc<Block> =
|
||||||
|
zebra_test::vectors::BLOCK_MAINNET_419201_BYTES.zcash_deserialize_into()?;
|
||||||
|
let block1: Arc<Block> =
|
||||||
|
zebra_test::vectors::BLOCK_MAINNET_419200_BYTES.zcash_deserialize_into()?;
|
||||||
|
// Create a random block which will have a much worse difficulty hash
|
||||||
|
// than an intentionally mined block from the mainnet
|
||||||
|
let child1 = block1.make_fake_child();
|
||||||
|
let child2 = block2.make_fake_child();
|
||||||
|
|
||||||
|
let mut state = NonFinalizedState::default();
|
||||||
|
assert_eq!(0, state.chain_set.len());
|
||||||
|
state.commit_new_chain(block1);
|
||||||
|
assert_eq!(1, state.chain_set.len());
|
||||||
|
state.commit_block(block2);
|
||||||
|
assert_eq!(1, state.chain_set.len());
|
||||||
|
state.commit_block(child1);
|
||||||
|
assert_eq!(2, state.chain_set.len());
|
||||||
|
state.commit_block(child2);
|
||||||
|
assert_eq!(2, state.chain_set.len());
|
||||||
|
|
||||||
|
Ok(())
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue