use messaging_thread_pool_macros::pool_item;
#[derive(Debug)]
pub struct MacroTest {
id: u64,
}
impl MacroTest {
pub fn new(id: u64) -> Self {
Self { id }
}
}
#[pool_item]
impl MacroTest {
#[messaging(TestRequest, TestResponse)]
pub fn test_method(&self, _arg: u64) -> u64 {
self.id
}
}
#[test]
fn test_macro_generation() {
let item = MacroTest { id: 1 };
assert_eq!(item.id, 1);
let request = TestRequest(1, 10);
assert_eq!(request.0, 1);
assert_eq!(request.1, 10);
let response = TestResponse { id: 1, result: 1 };
assert_eq!(response.id, 1);
assert_eq!(response.result, 1);
}