about summary refs log tree commit diff
diff options
context:
space:
mode:
authorvsrs <vit@conrlab.com>2023-08-28 15:30:44 +0700
committervsrs <vit@conrlab.com>2023-08-28 16:41:08 +0700
commit19e99941b640db1f4ea40952df925d00902ab8cf (patch)
tree7499b7d93ce9eaf0bf0f45b99debe92b31017b65
parente457759cbb6905c0078059a0bb8a23fdf9aac1eb (diff)
downloadrust-19e99941b640db1f4ea40952df925d00902ab8cf.tar.gz
rust-19e99941b640db1f4ea40952df925d00902ab8cf.zip
Add cov_mark tests
-rw-r--r--crates/ide-assists/src/handlers/bind_unused_param.rs31
1 files changed, 30 insertions, 1 deletions
diff --git a/crates/ide-assists/src/handlers/bind_unused_param.rs b/crates/ide-assists/src/handlers/bind_unused_param.rs
index 0a22d26193a..7d8672dbbd9 100644
--- a/crates/ide-assists/src/handlers/bind_unused_param.rs
+++ b/crates/ide-assists/src/handlers/bind_unused_param.rs
@@ -60,6 +60,7 @@ pub(crate) fn bind_unused_param(acc: &mut Assists, ctx: &AssistContext<'_>) -> O
     let right_line = line_index.line_col(r_curly_range.start()).line;
 
     if left_line == right_line {
+        cov_mark::hit!(single_line);
         text.push('\n');
     }
 
@@ -75,12 +76,13 @@ pub(crate) fn bind_unused_param(acc: &mut Assists, ctx: &AssistContext<'_>) -> O
 
 #[cfg(test)]
 mod tests {
-    use crate::tests::check_assist;
+    use crate::tests::{check_assist, check_assist_not_applicable};
 
     use super::*;
 
     #[test]
     fn bind_unused_empty_block() {
+        cov_mark::check!(single_line);
         check_assist(
             bind_unused_param,
             r#"
@@ -127,4 +129,31 @@ where T : Default {
 "#,
         );
     }
+
+    #[test]
+    fn trait_impl() {
+        cov_mark::check!(trait_impl);
+        check_assist_not_applicable(
+            bind_unused_param,
+            r#"
+trait Trait {
+    fn foo(x: i32);
+}
+impl Trait for () {
+    fn foo($0x: i32) {}
+}
+"#,
+        );
+    }
+
+    #[test]
+    fn keep_used() {
+        cov_mark::check!(keep_used);
+        check_assist_not_applicable(
+            bind_unused_param,
+            r#"
+fn foo(x: i32, $0y: i32) { y; }
+"#,
+        );
+    }
 }