in sdk/core/azure_core_amqp/src/value.rs [639:697]
fn test_value_implicit_conversions() {
test_conversion!(bool, Boolean, true);
test_conversion!(u8, UByte, 1u8);
test_conversion!(u16, UShort, 2u16);
test_conversion!(u32, UInt, 3u32);
test_conversion!(u64, ULong, 4u64);
test_conversion!(i8, Byte, 5i8);
test_conversion!(i16, Short, 6i16);
test_conversion!(i32, Int, 7i32);
test_conversion!(i64, Long, 8i64);
test_conversion!(f32, Float, 9.0f32);
test_conversion!(f64, Double, 10.0f64);
test_conversion!(char, Char, 'a');
test_conversion!(
AmqpTimestamp,
TimeStamp,
AmqpTimestamp(Some(SystemTime::now()))
);
test_conversion!(Uuid, Uuid, Uuid::new_v4());
test_conversion!(Vec<u8>, Binary, vec![1, 2, 3]);
test_conversion!(String, String, "hello".to_string());
test_conversion!(AmqpSymbol, Symbol, AmqpSymbol("hello".to_string()));
test_conversion!(
AmqpList,
List,
AmqpList(vec![AmqpValue::Int(1), AmqpValue::Float(2.75f32)])
);
test_conversion!(
Vec<AmqpValue>,
Array,
vec![AmqpValue::Int(1), AmqpValue::Int(2)]
);
test_conversion!(
AmqpOrderedMap<AmqpValue, AmqpValue>,
Map,
AmqpOrderedMap::new()
);
{
let described = AmqpDescribed::new(23, 2u32);
let v: AmqpValue = AmqpValue::Described(Box::new(described.clone()));
assert_eq!(v, AmqpValue::Described(Box::new(described.clone())));
assert_eq!(AmqpValue::Described(Box::new(described.clone())), v);
let b: Box<AmqpDescribed> = v.into();
assert_eq!(*b, described);
}
{
let v: AmqpValue = AmqpValue::Null;
assert_eq!(v, AmqpValue::Null);
assert_eq!(AmqpValue::Null, v);
let _: () = v.into();
}
{
let v: AmqpValue = AmqpValue::Unknown;
assert_eq!(v, AmqpValue::Unknown);
}
}