#[tokio::test] async fn hid_roundtrip() { use lesavka_common::lesavka::*; use lesavka_server::RelaySvc; // export the struct in lib.rs let svc = RelaySvc::default(); let (mut cli, srv) = tonic::transport::Channel::balance_channel(1); tokio::spawn( tonic::transport::server::Server::builder() .add_service(relay_server::RelayServer::new(svc)) .serve_with_incoming(srv), ); let (mut tx, mut rx) = relay_client::RelayClient::new(cli) .stream() .await .unwrap() .into_inner(); tx.send(HidReport { data: vec![0, 0, 4, 0, 0, 0, 0, 0], }) .await .unwrap(); assert!(rx.message().await.unwrap().is_none()); // nothing echoed yet }