Unnamed repository; edit this file 'description' to name the repository.
internal: move test
| -rw-r--r-- | crates/hir_def/src/macro_expansion_tests.rs | 22 | ||||
| -rw-r--r-- | crates/mbe/src/syntax_bridge.rs | 18 |
2 files changed, 21 insertions, 19 deletions
diff --git a/crates/hir_def/src/macro_expansion_tests.rs b/crates/hir_def/src/macro_expansion_tests.rs index 861a059a14..8ecdbec7ae 100644 --- a/crates/hir_def/src/macro_expansion_tests.rs +++ b/crates/hir_def/src/macro_expansion_tests.rs @@ -69,7 +69,7 @@ fn check(ra_fixture: &str, expect: Expect) { } #[test] -fn test_expand_rule() { +fn wrong_nesting_level() { check( r#" macro_rules! m { @@ -85,3 +85,23 @@ macro_rules! m { "#]], ); } + +#[test] +fn expansion_does_not_parse_as_expression() { + check( + r#" +macro_rules! stmts { + () => { let _ = 0; } +} + +fn f() { let _ = stmts!(); } +"#, + expect![[r#" +macro_rules! stmts { + () => { let _ = 0; } +} + +fn f() { let _ = /* error: could not convert tokens */; } +"#]], + ) +} diff --git a/crates/mbe/src/syntax_bridge.rs b/crates/mbe/src/syntax_bridge.rs index 7f68543310..631eb82de7 100644 --- a/crates/mbe/src/syntax_bridge.rs +++ b/crates/mbe/src/syntax_bridge.rs @@ -798,24 +798,6 @@ mod tests { } #[test] - fn stmts_token_trees_to_expr_is_err() { - let expansion = parse_macro( - r#" - macro_rules! stmts { - () => { - let a = 0; - let b = 0; - let c = 0; - let d = 0; - } - } - "#, - ) - .expand_tt("stmts!();"); - assert!(token_tree_to_syntax_node(&expansion, ParserEntryPoint::Expr).is_err()); - } - - #[test] fn test_token_tree_last_child_is_white_space() { let source_file = ast::SourceFile::parse("f!{}").ok().unwrap(); let macro_call = source_file.syntax().descendants().find_map(ast::MacroCall::cast).unwrap(); |