#![cfg(test)] #![cfg(all(feature = "serialization", feature = "digest"))] extern crate mrkl; extern crate serde_json; extern crate sha2; use mrkl::digest::ByteDigestHasher; use mrkl::leaf; use mrkl::tree::Builder; use sha2::Sha256; type Hasher = ByteDigestHasher; const TEST_DATA: &'static [u8] = b"The quick brown fox jumps over the lazy dog"; #[test] fn serialize() { let hasher = Hasher::new(); let leaf_extractor = leaf::extract_with(|input: &[u8]| { String::from_utf8(input.to_vec()).unwrap() }); let builder = Builder::from_hasher_leaf_data(hasher, leaf_extractor); let tree = builder.complete_tree_from(TEST_DATA.chunks(10)).unwrap(); let json = serde_json::to_string_pretty(&tree).unwrap(); println!("{}", json); }