about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJeroen Vannevel <jer_vannevel@outlook.com>2022-01-11 20:17:47 +0000
committerJeroen Vannevel <jer_vannevel@outlook.com>2022-01-14 01:32:11 +0000
commitaaec467cfde482ce7959ea1452138f71202f8dfd (patch)
tree71dbf2aa9d444956eadcadd209a9ae288e2dda44
parent169ec2fdc1dfe18b56a3bd8e2f6162587b397e47 (diff)
downloadrust-aaec467cfde482ce7959ea1452138f71202f8dfd.tar.gz
rust-aaec467cfde482ce7959ea1452138f71202f8dfd.zip
merge_match_arms_nested_with_conflicting_identifier
-rw-r--r--crates/ide_assists/src/handlers/merge_match_arms.rs28
1 files changed, 28 insertions, 0 deletions
diff --git a/crates/ide_assists/src/handlers/merge_match_arms.rs b/crates/ide_assists/src/handlers/merge_match_arms.rs
index a5869104dd5..49543861c23 100644
--- a/crates/ide_assists/src/handlers/merge_match_arms.rs
+++ b/crates/ide_assists/src/handlers/merge_match_arms.rs
@@ -648,4 +648,32 @@ fn func(x: MyEnum) {
         "#,        
         )
     }
+
+    #[test]
+    fn merge_match_arms_nested_with_conflicting_identifier() {
+        check_assist_not_applicable(
+            merge_match_arms,
+            r#"
+enum Color {
+    Rgb(i32, i32, i32),
+    Hsv(i32, i32, i32),
+}
+
+enum Message {
+    Move { x: i32, y: i32 },
+    ChangeColor(u8, Color),
 }
+
+fn main(msg: Message) {
+    match msg {
+        Message::ChangeColor(x, Color::Rgb(y, b, c)) => $0"",
+        Message::ChangeColor(y, Color::Hsv(x, b, c)) => "",
+        _ => "other"
+    };
+}
+        "#,        
+        )
+    }
+}
+
+