From 822c9cb77e73de988dc20af13a8ad90fffef1b52 Mon Sep 17 00:00:00 2001 From: Rostyslav Tyshko Date: Fri, 18 Oct 2024 02:37:24 +0200 Subject: [PATCH] tests setup: mock structures and get_first_32_bytes --- storage/src/merkle_tree_public/merkle_tree.rs | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/storage/src/merkle_tree_public/merkle_tree.rs b/storage/src/merkle_tree_public/merkle_tree.rs index ac933ea..643fb21 100644 --- a/storage/src/merkle_tree_public/merkle_tree.rs +++ b/storage/src/merkle_tree_public/merkle_tree.rs @@ -95,3 +95,29 @@ impl HashStorageMerkleTree { self.tree.commit(); } } + +#[cfg(test)] +mod tests { + use super::*; + + // Mock implementation of TreeLeavItem trait for testing + #[derive(Debug, Clone, PartialEq, Eq, Hash)] + struct MockTransaction { + pub hash: TreeHashType, + } + + impl TreeLeavItem for MockTransaction { + fn hash(&self) -> TreeHashType { + self.hash + } + } + + fn get_first_32_bytes(s: &str) -> [u8; 32] { + let mut buffer = [0u8; 32]; + let bytes = s.as_bytes(); + let len = std::cmp::min(32, bytes.len()); + + buffer[..len].copy_from_slice(&bytes[..len]); + buffer + } +}