about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAleksey Kladov <aleksey.kladov@gmail.com>2021-10-09 16:27:19 +0300
committerAleksey Kladov <aleksey.kladov@gmail.com>2021-10-09 16:27:19 +0300
commit75b0ce17cfa57daff824fcc2b99b3aaba66866a7 (patch)
tree6d00327d874735ef87498169ea43f2971e77201e
parent0dd1b354795500b34bd4f6a76ef1e364c7b1e5c8 (diff)
downloadrust-75b0ce17cfa57daff824fcc2b99b3aaba66866a7.tar.gz
rust-75b0ce17cfa57daff824fcc2b99b3aaba66866a7.zip
move test
-rw-r--r--crates/hir_def/src/macro_expansion_tests/mbe.rs26
-rw-r--r--crates/mbe/src/tests/expand.rs22
2 files changed, 26 insertions, 22 deletions
diff --git a/crates/hir_def/src/macro_expansion_tests/mbe.rs b/crates/hir_def/src/macro_expansion_tests/mbe.rs
index 09688e16b63..32ecd7a4ea2 100644
--- a/crates/hir_def/src/macro_expansion_tests/mbe.rs
+++ b/crates/hir_def/src/macro_expansion_tests/mbe.rs
@@ -98,3 +98,29 @@ struct Baz;
 "#]],
     );
 }
+
+#[test]
+fn tries_all_branches_matching_ident() {
+    check(
+        r#"
+macro_rules! m {
+    ($ i:ident) => ( mod $ i {} );
+    (spam $ i:ident) => ( fn $ i() {} );
+    (eggs $ i:ident) => ( struct $ i; )
+}
+m! { foo }
+m! { spam bar }
+m! { eggs Baz }
+"#,
+        expect![[r#"
+macro_rules! m {
+    ($ i:ident) => ( mod $ i {} );
+    (spam $ i:ident) => ( fn $ i() {} );
+    (eggs $ i:ident) => ( struct $ i; )
+}
+mod foo {}
+fn bar() {}
+struct Baz;
+"#]],
+    );
+}
diff --git a/crates/mbe/src/tests/expand.rs b/crates/mbe/src/tests/expand.rs
index f746eb5a1a6..33bdcbf0f8d 100644
--- a/crates/mbe/src/tests/expand.rs
+++ b/crates/mbe/src/tests/expand.rs
@@ -210,28 +210,6 @@ fn test_expr_order() {
 }
 
 #[test]
-fn test_fail_match_pattern_by_word_token() {
-    parse_macro(
-        r#"
-        macro_rules! foo {
-            ($ i:ident) => (
-                mod $ i {}
-            );
-            (spam $ i:ident) => (
-                fn $ i() {}
-            );
-            (eggs $ i:ident) => (
-                struct $ i;
-            )
-        }
-"#,
-    )
-    .assert_expand_items("foo! { foo }", "mod foo {}")
-    .assert_expand_items("foo! { spam bar }", "fn bar () {}")
-    .assert_expand_items("foo! { eggs Baz }", "struct Baz ;");
-}
-
-#[test]
 fn test_match_group_pattern_by_separator_token() {
     parse_macro(
         r#"