#![cfg(feature = "socketcan")]
use host_can::adapter::{Adapter, socketcan::SocketCanAdapter};
use host_can::frame::{CanFrame, Frame};
use host_can::id;
use std::error::Error;
use std::time::Duration;
#[test]
fn main() -> Result<(), Box<dyn Error>> {
let adapter = SocketCanAdapter::new("vcan0", 0)?;
let frame = CanFrame::new(id::new_standard(0x123).unwrap(), &[4, 5, 6])
.ok_or::<Box<dyn Error>>("Can't create frame".into())?;
adapter.send(&frame)?;
let frame = adapter.recv(Some(Duration::from_millis(1500)));
println!("Receive: {frame:?}");
Ok(())
}