AppFlowy/frontend/rust-lib/lib-dispatch/tests/api/module.rs

27 lines
628 B
Rust
Raw Normal View History

2021-09-04 07:12:53 +00:00
use std::sync::Arc;
use lib_dispatch::prelude::*;
use lib_dispatch::runtime::AFPluginRuntime;
2022-01-23 04:14:00 +00:00
pub async fn hello() -> String {
"say hello".to_string()
2022-01-23 04:14:00 +00:00
}
#[tokio::test]
2021-09-04 07:12:53 +00:00
async fn test() {
let event = "1";
let runtime = Arc::new(AFPluginRuntime::new().unwrap());
let dispatch = Arc::new(AFPluginDispatcher::construct(runtime, || {
vec![AFPlugin::new().event(event, hello)]
}));
let request = AFPluginRequest::new(event);
let _ = AFPluginDispatcher::async_send_with_callback(dispatch.clone(), request, |resp| {
Box::pin(async move {
dbg!(&resp);
})
})
.await;
2021-09-04 07:12:53 +00:00
std::mem::forget(dispatch);
}