use oxcache::infra::serialization::{json::JsonSerializer, Serializer};
#[test]
fn test_json_serializer_round_trip() {
let serializer = JsonSerializer::new();
let original_data = b"hello world this is test data";
let serialized = serializer.serialize("test", original_data).unwrap();
let deserialized = serializer.deserialize("test", &serialized).unwrap();
assert_eq!(original_data.as_slice(), deserialized.as_slice());
}
#[test]
fn test_json_serializer_with_compression() {
let serializer = JsonSerializer::with_compression();
#[derive(serde::Serialize, serde::Deserialize, Clone, Debug, PartialEq)]
struct TestData {
content: String,
}
let test_data = TestData {
content: "aaaaaaabbbbbbbbccccccccddddddddeeeeeeeeffffffffgggggggghhhhhhhh".repeat(5),
};
let original_bytes = serde_json::to_vec(&test_data).unwrap();
let serialized = serializer.serialize("test", &original_bytes).unwrap();
let deserialized = serializer.deserialize("test", &serialized).unwrap();
let deserialized_data: TestData = serde_json::from_slice(&deserialized).unwrap();
assert_eq!(test_data, deserialized_data);
}