@@ -517,6 +517,98 @@ mod tests {
517
517
518
518
use crate :: tests:: { check_assist, check_assist_not_applicable} ;
519
519
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
+
520
612
#[ test]
521
613
fn local_variable_with_usage ( ) {
522
614
check_assist (
@@ -784,7 +876,6 @@ fn main() {
784
876
785
877
#[ test]
786
878
fn local_variable_non_ident_pat ( ) {
787
- cov_mark:: check!( not_applicable_in_non_ident_pat) ;
788
879
check_assist_not_applicable (
789
880
bool_to_enum,
790
881
r#"
0 commit comments