Yusuke Sasaki | f00a3ef | 2018-07-20 22:08:42 +0900 | [diff] [blame] | 1 | extern crate syn; |
| 2 | |
David Tolnay | c3f9856 | 2018-11-02 08:55:05 -0700 | [diff] [blame] | 3 | mod features; |
| 4 | |
David Tolnay | 7d8b331 | 2019-03-10 01:26:11 -0800 | [diff] [blame] | 5 | #[macro_use] |
| 6 | mod macros; |
| 7 | |
| 8 | use syn::{Expr, Item}; |
Yusuke Sasaki | f00a3ef | 2018-07-20 22:08:42 +0900 | [diff] [blame] | 9 | |
| 10 | #[test] |
| 11 | fn test_async_fn() { |
David Tolnay | fcd53cf | 2019-05-09 13:06:59 -0700 | [diff] [blame^] | 12 | let input = "async fn process() {}"; |
| 13 | |
| 14 | snapshot!(input as Item, @r###" |
| 15 | ⋮Item::Fn { |
| 16 | ⋮ vis: Inherited, |
| 17 | ⋮ asyncness: Some, |
| 18 | ⋮ ident: "process", |
| 19 | ⋮ decl: FnDecl { |
| 20 | ⋮ generics: Generics, |
| 21 | ⋮ output: Default, |
| 22 | ⋮ }, |
| 23 | ⋮ block: Block, |
| 24 | ⋮} |
| 25 | "###); |
Yusuke Sasaki | f00a3ef | 2018-07-20 22:08:42 +0900 | [diff] [blame] | 26 | } |
Yusuke Sasaki | 4e5d966 | 2018-07-21 02:49:47 +0900 | [diff] [blame] | 27 | |
| 28 | #[test] |
| 29 | fn test_async_closure() { |
David Tolnay | fcd53cf | 2019-05-09 13:06:59 -0700 | [diff] [blame^] | 30 | let input = "async || {}"; |
| 31 | |
| 32 | snapshot!(input as Expr, @r###" |
| 33 | ⋮Expr::Closure { |
| 34 | ⋮ asyncness: Some, |
| 35 | ⋮ output: Default, |
| 36 | ⋮ body: Expr::Block { |
| 37 | ⋮ block: Block, |
| 38 | ⋮ }, |
| 39 | ⋮} |
| 40 | "###); |
Yusuke Sasaki | 4e5d966 | 2018-07-21 02:49:47 +0900 | [diff] [blame] | 41 | } |