diff options
| author | Aleksey Kladov <aleksey.kladov@gmail.com> | 2021-10-09 18:18:56 +0300 |
|---|---|---|
| committer | Aleksey Kladov <aleksey.kladov@gmail.com> | 2021-10-09 18:18:56 +0300 |
| commit | 3e8ef943c64ad4dd7d0550065cc0ef01d02bc40b (patch) | |
| tree | a46884617e76540963cd513bbab18d16b5c2bd9c | |
| parent | a060b9a4b234a3b98c9852781f2035889869f3ba (diff) | |
| download | rust-3e8ef943c64ad4dd7d0550065cc0ef01d02bc40b.tar.gz rust-3e8ef943c64ad4dd7d0550065cc0ef01d02bc40b.zip | |
internal: move some tests
| -rw-r--r-- | crates/hir_def/src/macro_expansion_tests.rs | 1 | ||||
| -rw-r--r-- | crates/hir_def/src/macro_expansion_tests/mbe.rs | 37 | ||||
| -rw-r--r-- | crates/mbe/src/tests/expand.rs | 22 |
3 files changed, 38 insertions, 22 deletions
diff --git a/crates/hir_def/src/macro_expansion_tests.rs b/crates/hir_def/src/macro_expansion_tests.rs index 60c9fd7d0a5..c66c75c1436 100644 --- a/crates/hir_def/src/macro_expansion_tests.rs +++ b/crates/hir_def/src/macro_expansion_tests.rs @@ -126,6 +126,7 @@ fn pretty_print_macro_expansion(expn: SyntaxNode) -> String { (T![>], IDENT) => " ", (T![>], _) if curr_kind.is_keyword() => " ", (T![->], _) | (_, T![->]) => " ", + (T![&&], _) | (_, T![&&]) => " ", _ => "", }; diff --git a/crates/hir_def/src/macro_expansion_tests/mbe.rs b/crates/hir_def/src/macro_expansion_tests/mbe.rs index c7442bade6e..384c70028df 100644 --- a/crates/hir_def/src/macro_expansion_tests/mbe.rs +++ b/crates/hir_def/src/macro_expansion_tests/mbe.rs @@ -346,3 +346,40 @@ fn bar() { "#]], ) } + +#[test] +fn test_match_group_with_multichar_sep() { + check( + r#" +macro_rules! m { + (fn $name:ident { $($i:literal)* }) => ( fn $name() -> bool { $($i)&&* } ); +} +m! (fn baz { true false } ); +"#, + expect![[r#" +macro_rules! m { + (fn $name:ident { $($i:literal)* }) => ( fn $name() -> bool { $($i)&&* } ); +} +fn baz() -> bool { + true && false +} +"#]], + ); + + check( + r#" +macro_rules! m { + (fn $name:ident { $($i:literal)&&* }) => ( fn $name() -> bool { $($i)&&* } ); +} +m! (fn baz { true && false } ); +"#, + expect![[r#" +macro_rules! m { + (fn $name:ident { $($i:literal)&&* }) => ( fn $name() -> bool { $($i)&&* } ); +} +fn baz() -> bool { + true && false +} +"#]], + ); +} diff --git a/crates/mbe/src/tests/expand.rs b/crates/mbe/src/tests/expand.rs index d0eb49455b7..c08788cda1e 100644 --- a/crates/mbe/src/tests/expand.rs +++ b/crates/mbe/src/tests/expand.rs @@ -72,28 +72,6 @@ macro_rules! foobar { } #[test] -fn test_match_group_with_multichar_sep() { - parse_macro( - r#" - macro_rules! foo { - (fn $name:ident {$($i:literal)*} ) => ( fn $name() -> bool { $($i)&&*} ); - }"#, - ) - .assert_expand_items("foo! (fn baz {true true} );", "fn baz () -> bool {true &&true}"); -} - -#[test] -fn test_match_group_with_multichar_sep2() { - parse_macro( - r#" - macro_rules! foo { - (fn $name:ident {$($i:literal)&&*} ) => ( fn $name() -> bool { $($i)&&*} ); - }"#, - ) - .assert_expand_items("foo! (fn baz {true && true} );", "fn baz () -> bool {true &&true}"); -} - -#[test] fn test_match_group_zero_match() { parse_macro( r#" |
