@@ -517,6 +517,98 @@ mod tests {
517517
518518 use crate :: tests:: { check_assist, check_assist_not_applicable} ;
519519
520+ #[ test]
521+ fn parameter_with_first_param_usage ( ) {
522+ check_assist (
523+ bool_to_enum,
524+ r#"
525+ fn function($0foo: bool, bar: bool) {
526+ if foo {
527+ println!("foo");
528+ }
529+ }
530+ "# ,
531+ r#"
532+ #[derive(PartialEq, Eq)]
533+ enum Bool { True, False }
534+
535+ fn function(foo: Bool, bar: bool) {
536+ if foo == Bool::True {
537+ println!("foo");
538+ }
539+ }
540+ "# ,
541+ )
542+ }
543+
544+ #[ test]
545+ fn parameter_with_last_param_usage ( ) {
546+ check_assist (
547+ bool_to_enum,
548+ r#"
549+ fn function(foo: bool, $0bar: bool) {
550+ if bar {
551+ println!("bar");
552+ }
553+ }
554+ "# ,
555+ r#"
556+ #[derive(PartialEq, Eq)]
557+ enum Bool { True, False }
558+
559+ fn function(foo: bool, bar: Bool) {
560+ if bar == Bool::True {
561+ println!("bar");
562+ }
563+ }
564+ "# ,
565+ )
566+ }
567+
568+ #[ test]
569+ fn parameter_with_middle_param_usage ( ) {
570+ check_assist (
571+ bool_to_enum,
572+ r#"
573+ fn function(foo: bool, $0bar: bool, baz: bool) {
574+ if bar {
575+ println!("bar");
576+ }
577+ }
578+ "# ,
579+ r#"
580+ #[derive(PartialEq, Eq)]
581+ enum Bool { True, False }
582+
583+ fn function(foo: bool, bar: Bool, baz: bool) {
584+ if bar == Bool::True {
585+ println!("bar");
586+ }
587+ }
588+ "# ,
589+ )
590+ }
591+
592+ #[ test]
593+ fn parameter_with_closure_usage ( ) {
594+ check_assist (
595+ bool_to_enum,
596+ r#"
597+ fn main() {
598+ let foo = |$0bar: bool| bar;
599+ }
600+ "# ,
601+ r#"
602+ #[derive(PartialEq, Eq)]
603+ enum Bool { True, False }
604+
605+ fn main() {
606+ let foo = |bar: Bool| bar == Bool::True;
607+ }
608+ "# ,
609+ )
610+ }
611+
520612 #[ test]
521613 fn local_variable_with_usage ( ) {
522614 check_assist (
@@ -784,7 +876,6 @@ fn main() {
784876
785877 #[ test]
786878 fn local_variable_non_ident_pat ( ) {
787- cov_mark:: check!( not_applicable_in_non_ident_pat) ;
788879 check_assist_not_applicable (
789880 bool_to_enum,
790881 r#"
0 commit comments