]> git.lizzy.rs Git - rust.git/commitdiff
Add macro test
authorBrandon <brandondong604@hotmail.com>
Sun, 11 Apr 2021 18:12:02 +0000 (11:12 -0700)
committerBrandon <brandondong604@hotmail.com>
Sun, 11 Apr 2021 18:12:02 +0000 (11:12 -0700)
crates/ide_assists/src/handlers/extract_function.rs

index 8e295098f9860e9515cf6a4ac6e0e80c90fd3291..719f22053cce2c85864524adadd8efda60108d57 100644 (file)
@@ -3384,4 +3384,36 @@ fn foo() -> Result<(), i64> {
 }"##,
         );
     }
+
+    #[test]
+    fn param_usage_in_macro() {
+        check_assist(
+            extract_function,
+            r"
+macro_rules! m {
+    ($val:expr) => { $val };
+}
+
+fn foo() {
+    let n = 1;
+    $0let k = n * m!(n);$0
+    let m = k + 1;
+}",
+            r"
+macro_rules! m {
+    ($val:expr) => { $val };
+}
+
+fn foo() {
+    let n = 1;
+    let k = fun_name(n);
+    let m = k + 1;
+}
+
+fn $0fun_name(n: i32) -> i32 {
+    let k = n * m!(n);
+    k
+}",
+        );
+    }
 }