use mavspec::parser::XMLInspector;
fn main() {
env_logger::builder()
.filter_level(log::LevelFilter::Info)
.filter_module(env!("CARGO_PKG_NAME"), log::LevelFilter::Trace)
.init();
let inspector = XMLInspector::new(vec![
"./message_definitions/standard".to_string(),
"./message_definitions/extra".to_string(),
])
.unwrap();
let protocol = inspector.parse().unwrap();
let crazyflight = protocol.dialects().get("crazyflight").unwrap();
let outcry_message = crazyflight.messages().get(&54000u32).unwrap();
assert_eq!(outcry_message.name(), "CRAZYFLIGHT_OUTCRY");
log::warn!("\n`CRAZYFLIGHT_OUTCRY` message: {:#?}", outcry_message);
let heartbeat_message = crazyflight.messages().get(&0u32).unwrap();
assert_eq!(heartbeat_message.name(), "HEARTBEAT");
assert_eq!(
heartbeat_message.defined_in().as_deref().unwrap(),
"minimal"
);
}