blob: 89ac2003cb76077d3b839386d11947ac2bd8bad8 [file] [log] [blame]
mod common;
use common::init_logger;
use log::info;
use serde::Deserialize;
use serde_xml_rs::from_str;
#[derive(Debug, Deserialize, PartialEq)]
struct Item {
name: String,
source: String,
}
#[test]
fn simple_struct_from_attributes_should_fail() {
init_logger();
let s = r##"
<item name="hello" source="world.rs />
"##;
let item: Result<Item, _> = from_str(s);
match item {
Ok(_) => assert!(false),
Err(e) => {
info!("simple_struct_from_attributes_should_fail(): {}", e);
assert!(true)
}
}
}
#[test]
fn multiple_roots_attributes_should_fail() {
init_logger();
let s = r##"
<item name="hello" source="world.rs" />
<item name="hello source="world.rs" />
"##;
let item: Result<Vec<Item>, _> = from_str(s);
match item {
Ok(_) => assert!(false),
Err(e) => {
info!("multiple_roots_attributes_should_fail(): {}", e);
assert!(true)
}
}
}