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 | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/crates/ide_completion/src/tests/pattern.rs b/crates/ide_completion/src/tests/pattern.rs index 1dcb0a5531..2aef48153b 100644 --- a/crates/ide_completion/src/tests/pattern.rs +++ b/crates/ide_completion/src/tests/pattern.rs @@ -306,6 +306,7 @@ fn func() { ev TupleV(…) TupleV(u32) ev RecordV {…} RecordV { field: u32 } ev UnitV UnitV + ct ASSOC_CONST const ASSOC_CONST: () "#]], ); } @@ -466,5 +467,53 @@ fn f(t: Ty) { expect![[r#" ct ABC const ABC: Self "#]], + ); + + check_empty( + r#" +struct MyEnum; + +impl MyEnum { + pub const A: i32 = 123; + pub const B: i32 = 456; +} + +fn f(e: MyEnum) { + match e { + MyEnum::$0 => {} + _ => {} + } +} +"#, + expect![[r#" + ct A pub const A: i32 + ct B pub const B: i32 + "#]], + ); + + check_empty( + r#" +#[repr(C)] +union U { + i: i32, + f: f32, +} + +impl U { + pub const C: i32 = 123; + pub const D: i32 = 456; +} + +fn f(u: U) { + match u { + U::$0 => {} + _ => {} + } +} +"#, + expect![[r#" + ct C pub const C: i32 + ct D pub const D: i32 + "#]], ) } |