use similar_asserts::assert_eq;
use instant_xml::{from_str, to_string, FromXml, ToXml};
#[derive(Debug, Eq, FromXml, PartialEq, ToXml)]
struct OneNumber(i32);
#[test]
fn one_number() {
let v = OneNumber(42);
let xml = r#"42"#;
assert_eq!(xml, to_string(&v).unwrap());
assert_eq!(v, from_str(xml).unwrap());
}
#[derive(Debug, Eq, FromXml, PartialEq, ToXml)]
struct OneString(String);
#[test]
fn one_string() {
let v = OneString("f42".to_owned());
let xml = r#"f42"#;
assert_eq!(xml, to_string(&v).unwrap());
assert_eq!(v, from_str(xml).unwrap());
}
#[derive(Debug, Eq, FromXml, PartialEq, ToXml)]
struct StringElement(String, Foo);
#[derive(Debug, Eq, FromXml, PartialEq, ToXml)]
struct Foo;
#[test]
fn string_element() {
let v = StringElement("f42".to_owned(), Foo);
let xml = r#"f42"#;
assert_eq!(xml, to_string(&v).unwrap());
assert_eq!(v, from_str(xml).unwrap());
}