in src/primitives.rs [616:650]
fn test_bincode_serialize_to_versionize() {
let mut snapshot_mem = vec![0u8; 4096];
let vm = VersionMap::new();
let test_struct = TestCompatibility {
_string: "String".to_owned(),
_array: [128u8; 32],
_u8: 1,
_u16: 32000,
_u32: 0x1234_5678,
_u64: 0x1234_5678_9875_4321,
_i8: -1,
_i16: -32000,
_i32: -0x1234_5678,
_i64: -0x1234_5678_9875_4321,
_usize: 0x1234_5678_9875_4321,
_isize: -0x1234_5678_9875_4321,
_f32: 0.123,
_f64: 0.123_456_789_000_000,
_vec: vec![33; 32],
_option: Some(true),
_enums: vec![
CompatibleEnum::A,
CompatibleEnum::B("abcd".to_owned()),
CompatibleEnum::C(1, 2, 'a'),
],
_box: Box::new("Box".to_owned()),
};
bincode::serialize_into(&mut snapshot_mem.as_mut_slice(), &test_struct).unwrap();
let restored_state: TestCompatibility =
Versionize::deserialize(&mut snapshot_mem.as_slice(), &vm, 1).unwrap();
assert_eq!(test_struct, restored_state);
}