diff --git a/src/commit.rs b/src/commit.rs index 2438fee..b16b022 100644 --- a/src/commit.rs +++ b/src/commit.rs @@ -139,11 +139,11 @@ fn handle_member_list(commit_msg: &CommitMessage) -> Result { } if let Some(paired_addresses) = commit_msg.public_data.get("pairedAddresses") { - let paired_addresses: Vec = serde_json::from_value(paired_addresses.clone())?; + let paired_addresses: Vec = sdk_common::serialization::ciborium_deserialize(paired_addresses)?; let mut memberlist = lock_members()?; memberlist.insert( commit_msg.process_id, - Member::new(paired_addresses.iter().map(|a| a.as_str().try_into().unwrap()).collect()) + Member::new(paired_addresses) ); return Ok(commit_msg.process_id); } @@ -366,6 +366,7 @@ mod tests { use sdk_common::sp_client::silentpayments::SilentPaymentAddress; use mockall::predicate::*; use mockall::mock; + use serde_json::json; use std::collections::BTreeMap; use std::collections::HashMap; use std::path::PathBuf; @@ -542,8 +543,8 @@ mod tests { storages: vec![], }; let roles = Roles::new(BTreeMap::from([(String::from("role_name"), role_def)])); - let public_data = Pcd::new(BTreeMap::from([("pub_a".to_owned(), Value::Null)])); - let clear_state = Pcd::new(BTreeMap::from([("a".to_owned(), Value::Null), ("b".to_owned(), Value::Null)])); + let public_data = TryInto::::try_into(json!({"pub_a": Value::Null})).unwrap(); + let clear_state = TryInto::::try_into(json!({"a": Value::Null, "b": Value::Null})).unwrap(); let pcd_commitments = PcdCommitments::new(&process_id, &Pcd::new(public_data.clone().into_iter().chain(clear_state).collect()), &roles).unwrap(); let commit_msg = CommitMessage {