use crate::FrcValue;
#[test]
fn test_value_serde() {
#[derive(serde::Serialize, serde::Deserialize, Debug, PartialEq)]
struct Test {
field: FrcValue,
}
let test_inst = Test {
field: FrcValue::from(1.0),
};
let json_str = r#"{"field":1.0}"#;
let test_de: Test = serde_json::from_str(json_str).unwrap();
let test_ser = serde_json::to_string(&test_inst).unwrap();
assert_eq!(json_str, test_ser);
assert_eq!(test_inst, test_de);
}
#[test]
fn test_table_serde_simple() {
let value = FrcValue::from(1.0);
assert_eq!(f32::try_from(value.clone()).unwrap(), 1.0);
fn assert_f64_eq(a: f64, b: f64) {
assert!((a - b).abs() < 0.0001);
}
assert_f64_eq(value.try_into().unwrap(), 1.0);
}