1 use maybe_async::maybe_async; 2 3 #[maybe_async] async_fn() -> bool4 async fn async_fn() -> bool { 5 true 6 } 7 8 #[maybe_async::test( 9 feature = "is_sync", 10 async(all(not(feature="is_sync"), feature = "async_std"), async_std::test), 11 async(all(not(feature="is_sync"), feature = "tokio"), tokio::test) 12 )] test_async_fn()13 async fn test_async_fn() { 14 let res = async_fn().await; 15 assert_eq!(res, true); 16 } 17 18 #[maybe_async::test(feature = "is_sync", async(not(feature = "is_sync"), async_std::test))] test_async_fn2()19 async fn test_async_fn2() { 20 let res = async_fn().await; 21 assert_eq!(res, true); 22 } 23 24 #[maybe_async::test("feature=\"is_sync\"", async(not(feature = "is_sync"), async_std::test))] test_async_fn3()25 async fn test_async_fn3() { 26 let res = async_fn().await; 27 assert_eq!(res, true); 28 } 29 30 #[maybe_async::test(feature = "is_sync", async("not(feature = \"is_sync\")", "async_std::test"))] test_async_fn4()31 async fn test_async_fn4() { 32 let res = async_fn().await; 33 assert_eq!(res, true); 34 } 35 main()36 fn main() { 37 38 } 39