diff --git a/aries_vcx/src/messages/a2a/mod.rs b/aries_vcx/src/messages/a2a/mod.rs index baf6cac891..604d7b7bbc 100644 --- a/aries_vcx/src/messages/a2a/mod.rs +++ b/aries_vcx/src/messages/a2a/mod.rs @@ -415,6 +415,7 @@ pub mod test_a2a_serialization { // serialization let val: Value = serde_json::from_str(&serialized).unwrap(); assert_eq!(val["@type"], Value::String("did:sov:BzCbsNYhMrjHiqZDTUASHg;spec/routing/1.0/forward".into())); + assert_eq!(val["@id"], Value::String("testid".into())); } #[test] diff --git a/aries_vcx/src/messages/forward.rs b/aries_vcx/src/messages/forward.rs index fcdfcb2adf..32608f808f 100644 --- a/aries_vcx/src/messages/forward.rs +++ b/aries_vcx/src/messages/forward.rs @@ -1,7 +1,10 @@ use crate::error::prelude::*; +use crate::messages::a2a::MessageId; #[derive(Clone, Serialize, Deserialize, Debug, PartialEq, Default)] pub struct Forward { + #[serde(rename = "@id")] + pub id: MessageId, pub to: String, #[serde(rename = "msg")] pub msg: serde_json::Value, @@ -13,6 +16,7 @@ impl Forward { .map_err(|err| VcxError::from_msg(VcxErrorKind::InvalidState, err))?; Ok(Forward { + id: MessageId::new(), to, msg, }) @@ -35,6 +39,7 @@ pub mod tests { fn _forward() -> Forward { Forward { + id: MessageId::default(), to: _to(), msg: _msg(), }