pub mod dmi;
pub use dmi::{
DmiRawData,
DmiEntry,
DmiError,
DmiSystemInformation,
Result
};
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_decode()->Result<()> {
for data in [&include_bytes!("../data/sys/firmware/dmi/entries/1-0/raw")[..],
&include_bytes!("../data/sys/firmware/dmi/entries/2-0/raw")[..]]
{
let raw = DmiRawData::from_reader(&data[..])?;
let entry : DmiEntry = (&raw).try_into()?;
println!("{:?}",entry);
if let DmiEntry::SI(
DmiSystemInformation { uuid:Some(u),.. }) = entry
{
println!("UUID: {}",u);
}
}
Ok(())
}
}