Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide_completion/src/tests/pattern.rs')
| -rw-r--r-- | crates/ide_completion/src/tests/pattern.rs | 68 |
1 files changed, 67 insertions, 1 deletions
diff --git a/crates/ide_completion/src/tests/pattern.rs b/crates/ide_completion/src/tests/pattern.rs index 891c1346df..50d5e01979 100644 --- a/crates/ide_completion/src/tests/pattern.rs +++ b/crates/ide_completion/src/tests/pattern.rs @@ -150,6 +150,7 @@ fn foo() { bn Tuple Tuple($1)$0 st Tuple ev Variant + md module en SingleVariantEnum st Unit ma makro!(…) macro_rules! makro @@ -171,6 +172,7 @@ fn foo(a$0) { st Record bn Tuple Tuple($1): Tuple$0 st Tuple + md module st Unit ma makro!(…) macro_rules! makro "#]], @@ -187,6 +189,7 @@ fn foo(a$0: Tuple) { st Record bn Tuple Tuple($1)$0 st Tuple + md module st Unit ma makro!(…) macro_rules! makro "#]], @@ -228,7 +231,6 @@ fn foo() { expect![[r#" kw ref kw mut - ev E::X E::X en E ma m!(…) macro_rules! m "#]], @@ -378,3 +380,67 @@ fn foo() { "#]], ) } + +#[test] +fn completes_no_delims_if_existing() { + check_empty( + r#" +struct Bar(u32); +fn foo() { + match Bar(0) { + B$0(b) => {} + } +} +"#, + expect![[r#" + kw self:: + kw super:: + kw crate:: + "#]], + ); + check_empty( + r#" +struct Foo { bar: u32 } +fn foo() { + match Foo { bar: 0 } { + F$0 { bar } => {} + } +} +"#, + expect![[r#" + kw return + kw self + kw super + kw crate + st Foo + fn foo() fn() + bt u32 + "#]], + ); + check_empty( + r#" +enum Enum { + TupleVariant(u32) +} +fn foo() { + match Enum::TupleVariant(0) { + Enum::T$0(b) => {} + } +} +"#, + expect![[r#""#]], + ); + check_empty( + r#" +enum Enum { + RecordVariant { field: u32 } +} +fn foo() { + match (Enum::RecordVariant { field: 0 }) { + Enum::RecordV$0 { field } => {} + } +} +"#, + expect![[r#""#]], + ); +} |