Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'crates/ide-completion/src/completions/record.rs')
-rw-r--r--crates/ide-completion/src/completions/record.rs31
1 files changed, 30 insertions, 1 deletions
diff --git a/crates/ide-completion/src/completions/record.rs b/crates/ide-completion/src/completions/record.rs
index 6743ec897f..0521e735de 100644
--- a/crates/ide-completion/src/completions/record.rs
+++ b/crates/ide-completion/src/completions/record.rs
@@ -159,8 +159,9 @@ fn baz() {
#[test]
fn enum_variant_no_snippets() {
let conf = CompletionConfig { snippet_cap: SnippetCap::new(false), ..TEST_CONFIG };
+ // tuple variant
check_edit_with_config(
- conf,
+ conf.clone(),
"Variant()",
r#"
enum Enum {
@@ -184,6 +185,34 @@ impl Enum {
}
}
"#,
+ );
+
+ // record variant
+ check_edit_with_config(
+ conf,
+ "Variant{}",
+ r#"
+enum Enum {
+ Variant{u: usize},
+}
+
+impl Enum {
+ fn new(u: usize) -> Self {
+ Self::Va$0
+ }
+}
+"#,
+ r#"
+enum Enum {
+ Variant{u: usize},
+}
+
+impl Enum {
+ fn new(u: usize) -> Self {
+ Self::Variant
+ }
+}
+"#,
)
}