1fad3a1d3Sopenharmony_ci#![allow(clippy::uninlined_format_args)] 2fad3a1d3Sopenharmony_ci 3fad3a1d3Sopenharmony_ci#[macro_use] 4fad3a1d3Sopenharmony_cimod macros; 5fad3a1d3Sopenharmony_ci 6fad3a1d3Sopenharmony_ci#[test] 7fad3a1d3Sopenharmony_cifn test_basic() { 8fad3a1d3Sopenharmony_ci let content = "#!/usr/bin/env rustx\nfn main() {}"; 9fad3a1d3Sopenharmony_ci let file = syn::parse_file(content).unwrap(); 10fad3a1d3Sopenharmony_ci snapshot!(file, @r###" 11fad3a1d3Sopenharmony_ci File { 12fad3a1d3Sopenharmony_ci shebang: Some("#!/usr/bin/env rustx"), 13fad3a1d3Sopenharmony_ci items: [ 14fad3a1d3Sopenharmony_ci Item::Fn { 15fad3a1d3Sopenharmony_ci vis: Visibility::Inherited, 16fad3a1d3Sopenharmony_ci sig: Signature { 17fad3a1d3Sopenharmony_ci ident: "main", 18fad3a1d3Sopenharmony_ci generics: Generics, 19fad3a1d3Sopenharmony_ci output: ReturnType::Default, 20fad3a1d3Sopenharmony_ci }, 21fad3a1d3Sopenharmony_ci block: Block { 22fad3a1d3Sopenharmony_ci stmts: [], 23fad3a1d3Sopenharmony_ci }, 24fad3a1d3Sopenharmony_ci }, 25fad3a1d3Sopenharmony_ci ], 26fad3a1d3Sopenharmony_ci } 27fad3a1d3Sopenharmony_ci "###); 28fad3a1d3Sopenharmony_ci} 29fad3a1d3Sopenharmony_ci 30fad3a1d3Sopenharmony_ci#[test] 31fad3a1d3Sopenharmony_cifn test_comment() { 32fad3a1d3Sopenharmony_ci let content = "#!//am/i/a/comment\n[allow(dead_code)] fn main() {}"; 33fad3a1d3Sopenharmony_ci let file = syn::parse_file(content).unwrap(); 34fad3a1d3Sopenharmony_ci snapshot!(file, @r###" 35fad3a1d3Sopenharmony_ci File { 36fad3a1d3Sopenharmony_ci attrs: [ 37fad3a1d3Sopenharmony_ci Attribute { 38fad3a1d3Sopenharmony_ci style: AttrStyle::Inner, 39fad3a1d3Sopenharmony_ci meta: Meta::List { 40fad3a1d3Sopenharmony_ci path: Path { 41fad3a1d3Sopenharmony_ci segments: [ 42fad3a1d3Sopenharmony_ci PathSegment { 43fad3a1d3Sopenharmony_ci ident: "allow", 44fad3a1d3Sopenharmony_ci }, 45fad3a1d3Sopenharmony_ci ], 46fad3a1d3Sopenharmony_ci }, 47fad3a1d3Sopenharmony_ci delimiter: MacroDelimiter::Paren, 48fad3a1d3Sopenharmony_ci tokens: TokenStream(`dead_code`), 49fad3a1d3Sopenharmony_ci }, 50fad3a1d3Sopenharmony_ci }, 51fad3a1d3Sopenharmony_ci ], 52fad3a1d3Sopenharmony_ci items: [ 53fad3a1d3Sopenharmony_ci Item::Fn { 54fad3a1d3Sopenharmony_ci vis: Visibility::Inherited, 55fad3a1d3Sopenharmony_ci sig: Signature { 56fad3a1d3Sopenharmony_ci ident: "main", 57fad3a1d3Sopenharmony_ci generics: Generics, 58fad3a1d3Sopenharmony_ci output: ReturnType::Default, 59fad3a1d3Sopenharmony_ci }, 60fad3a1d3Sopenharmony_ci block: Block { 61fad3a1d3Sopenharmony_ci stmts: [], 62fad3a1d3Sopenharmony_ci }, 63fad3a1d3Sopenharmony_ci }, 64fad3a1d3Sopenharmony_ci ], 65fad3a1d3Sopenharmony_ci } 66fad3a1d3Sopenharmony_ci "###); 67fad3a1d3Sopenharmony_ci} 68