mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-07-22 14:55:41 +00:00
Move beefy-merkle-tree to utils/binary-merkle-tree and make it generic (#13076)
* move BeefyMmrApi to pallet-beefy-mmr * fix test_utils use pallet-beefy-mmr BeefyMmrApi * Move beefy-merkle-tree to utils and Rename to Merkle-tree * fix fmt and test * Update merkle-tree to binary-merkle-tree and Remove Keccak256 mod from merkle-tree * change merkle-tree name to binary-merkle-tree * mirr fix
This commit is contained in:
@@ -200,10 +200,24 @@ impl<T: Config> Pallet<T> {
|
||||
.map(T::BeefyAuthorityToMerkleLeaf::convert)
|
||||
.collect::<Vec<_>>();
|
||||
let len = beefy_addresses.len() as u32;
|
||||
let root = beefy_merkle_tree::merkle_root::<<T as pallet_mmr::Config>::Hashing, _>(
|
||||
let root = binary_merkle_tree::merkle_root::<<T as pallet_mmr::Config>::Hashing, _>(
|
||||
beefy_addresses,
|
||||
)
|
||||
.into();
|
||||
BeefyAuthoritySet { id, len, root }
|
||||
}
|
||||
}
|
||||
|
||||
sp_api::decl_runtime_apis! {
|
||||
/// API useful for BEEFY light clients.
|
||||
pub trait BeefyMmrApi<H>
|
||||
where
|
||||
BeefyAuthoritySet<H>: sp_api::Decode,
|
||||
{
|
||||
/// Return the currently active BEEFY authority set proof.
|
||||
fn authority_set_proof() -> BeefyAuthoritySet<H>;
|
||||
|
||||
/// Return the next/queued BEEFY authority set proof.
|
||||
fn next_authority_set_proof() -> BeefyNextAuthoritySet<H>;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -147,7 +147,7 @@ impl BeefyDataProvider<Vec<u8>> for DummyDataProvider {
|
||||
fn extra_data() -> Vec<u8> {
|
||||
let mut col = vec![(15, vec![1, 2, 3]), (5, vec![4, 5, 6])];
|
||||
col.sort();
|
||||
beefy_merkle_tree::merkle_root::<<Test as pallet_mmr::Config>::Hashing, _>(
|
||||
binary_merkle_tree::merkle_root::<<Test as pallet_mmr::Config>::Hashing, _>(
|
||||
col.into_iter().map(|pair| pair.encode()),
|
||||
)
|
||||
.as_ref()
|
||||
|
||||
Reference in New Issue
Block a user