Merkle tree fails to compute the root when there's no need in dummy nodes - test
Sergey Vasilyev swasilyev@gmail.com
Tue, 28 Apr 2020 00:07:10 +0300
1 files changed,
10 insertions(+),
1 deletions(-)
M
crypto-primitives/src/merkle_tree/mod.rs
→
crypto-primitives/src/merkle_tree/mod.rs
@@ -378,7 +378,7 @@
struct JubJubMerkleTreeParams; impl MerkleTreeConfig for JubJubMerkleTreeParams { - const HEIGHT: usize = 32; + const HEIGHT: usize = 8; type H = H; } type JubJubMerkleTree = MerkleHashTree<JubJubMerkleTreeParams>;@@ -404,6 +404,15 @@ }
generate_merkle_tree(&leaves); let mut leaves = Vec::new(); for i in 0..100u8 { + leaves.push([i, i, i, i, i, i, i, i]); + } + generate_merkle_tree(&leaves); + } + + #[test] + fn no_dummy_nodes_test() { + let mut leaves = Vec::new(); + for i in 0..(1u8 << JubJubMerkleTree::HEIGHT - 1) { leaves.push([i, i, i, i, i, i, i, i]); } generate_merkle_tree(&leaves);