#[allow(unused_imports)] use bit_set::BitSet; #[cfg(feature = "serde")] #[test] fn test_serialization() { let bset: BitSet = BitSet::new(); let serialized = serde_json::to_string(&bset).unwrap(); let unserialized: BitSet = serde_json::from_str(&serialized).unwrap(); assert_eq!(bset, unserialized); let elems: Vec = vec![11, 42, 100, 101]; let bset: BitSet = elems.iter().map(|n| *n).collect(); let serialized = serde_json::to_string(&bset).unwrap(); let unserialized = serde_json::from_str(&serialized).unwrap(); assert_eq!(bset, unserialized); } #[cfg(feature = "miniserde")] #[test] fn test_miniserde_serialization() { let bset: BitSet = BitSet::new(); let serialized = miniserde::json::to_string(&bset); let unserialized: BitSet = miniserde::json::from_str(&serialized[..]).unwrap(); assert_eq!(bset, unserialized); let elems: Vec = vec![11, 42, 100, 101]; let bset: BitSet = elems.iter().map(|n| *n).collect(); let serialized = miniserde::json::to_string(&bset); let unserialized = miniserde::json::from_str(&serialized[..]).unwrap(); assert_eq!(bset, unserialized); } #[cfg(feature = "borsh")] #[test] fn test_borsh_serialization() { let bset: BitSet = BitSet::new(); let serialized = borsh::to_vec(&bset).unwrap(); let unserialized: BitSet = borsh::from_slice(&serialized[..]).unwrap(); assert_eq!(bset, unserialized); let elems: Vec = vec![11, 42, 100, 101]; let bset: BitSet = elems.iter().map(|n| *n).collect(); let serialized = borsh::to_vec(&bset).unwrap(); let unserialized = borsh::from_slice(&serialized[..]).unwrap(); assert_eq!(bset, unserialized); }