cufflink_types/host/
mod.rs1pub mod http;
5pub mod nats;
6pub mod request;
7pub mod storage;
8
9#[cfg(test)]
10pub(crate) mod tests {
11 use serde::de::DeserializeOwned;
12 use serde::Serialize;
13 use serde_json::Value;
14 use std::fmt::Debug;
15
16 pub(crate) fn round_trip<T: Serialize + DeserializeOwned + PartialEq + Debug>(
17 value: &T,
18 wire: Value,
19 ) {
20 assert_eq!(serde_json::to_value(value).expect("serialize"), wire);
21 assert_eq!(
22 &serde_json::from_value::<T>(wire).expect("deserialize"),
23 value
24 );
25 }
26
27 pub(crate) fn refused<T: DeserializeOwned + Debug>(wire: Value) {
28 let parsed = serde_json::from_value::<T>(wire.clone());
29 assert!(parsed.is_err(), "{wire} parsed as {parsed:?}");
30 }
31}