use polyvalue::{types::*, Value};
use std::str::FromStr;
fn main() {
let (left, right) = Value::from(1)
.resolve(&Value::from(CurrencyInner::from_str("$50.000").unwrap()))
.unwrap();
assert_eq!(
left,
Value::from(CurrencyInner::from_str("$1.000").unwrap())
);
assert_eq!(
right,
Value::from(CurrencyInner::from_str("$50.000").unwrap())
);
let (left, right) = Value::from("hello world")
.resolve(&Value::from(false))
.unwrap();
assert_eq!(left, Value::from("hello world"));
assert_eq!(right, Value::from("false"));
let (_, right) = Value::from(vec![Value::from(1), Value::from(2)])
.resolve(&Value::from(3))
.unwrap();
assert_eq!(right, Value::from(vec![Value::from(3)]));
}