@@ -519,7 +519,7 @@ fn main() {
519
519
#[ test]
520
520
fn option_iflet ( ) {
521
521
check_edit (
522
- "ifl" ,
522
+ "bar. ifl" ,
523
523
r#"
524
524
//- minicore: option
525
525
fn main() {
@@ -541,7 +541,7 @@ fn main() {
541
541
#[ test]
542
542
fn option_letelse ( ) {
543
543
check_edit (
544
- "lete" ,
544
+ "bar. lete" ,
545
545
r#"
546
546
//- minicore: option
547
547
fn main() {
564
564
#[ test]
565
565
fn result_match ( ) {
566
566
check_edit (
567
- "match" ,
567
+ "bar. match" ,
568
568
r#"
569
569
//- minicore: result
570
570
fn main() {
@@ -586,13 +586,13 @@ fn main() {
586
586
587
587
#[ test]
588
588
fn postfix_completion_works_for_ambiguous_float_literal ( ) {
589
- check_edit ( "refm" , r#"fn main() { 42.$0 }"# , r#"fn main() { &mut 42 }"# )
589
+ check_edit ( "42. refm" , r#"fn main() { 42.$0 }"# , r#"fn main() { &mut 42 }"# )
590
590
}
591
591
592
592
#[ test]
593
593
fn works_in_simple_macro ( ) {
594
594
check_edit (
595
- "dbg" ,
595
+ "bar. dbg" ,
596
596
r#"
597
597
macro_rules! m { ($e:expr) => { $e } }
598
598
fn main() {
@@ -612,10 +612,10 @@ fn main() {
612
612
613
613
#[ test]
614
614
fn postfix_completion_for_references ( ) {
615
- check_edit ( "dbg" , r#"fn main() { &&42.$0 }"# , r#"fn main() { dbg!(&&42) }"# ) ;
616
- check_edit ( "refm" , r#"fn main() { &&42.$0 }"# , r#"fn main() { &&&mut 42 }"# ) ;
615
+ check_edit ( "&&42. dbg" , r#"fn main() { &&42.$0 }"# , r#"fn main() { dbg!(&&42) }"# ) ;
616
+ check_edit ( "42. refm" , r#"fn main() { &&42.$0 }"# , r#"fn main() { &&&mut 42 }"# ) ;
617
617
check_edit (
618
- "ifl" ,
618
+ "bar. ifl" ,
619
619
r#"
620
620
//- minicore: option
621
621
fn main() {
@@ -636,35 +636,39 @@ fn main() {
636
636
637
637
#[ test]
638
638
fn postfix_completion_for_unsafe ( ) {
639
- check_edit ( "unsafe" , r#"fn main() { foo.$0 }"# , r#"fn main() { unsafe { foo } }"# ) ;
640
- check_edit ( "unsafe" , r#"fn main() { { foo }.$0 }"# , r#"fn main() { unsafe { foo } }"# ) ;
639
+ check_edit ( "foo.unsafe" , r#"fn main() { foo.$0 }"# , r#"fn main() { unsafe { foo } }"# ) ;
641
640
check_edit (
642
- "unsafe" ,
641
+ "{ foo }.unsafe" ,
642
+ r#"fn main() { { foo }.$0 }"# ,
643
+ r#"fn main() { unsafe { foo } }"# ,
644
+ ) ;
645
+ check_edit (
646
+ "if x { foo }.unsafe" ,
643
647
r#"fn main() { if x { foo }.$0 }"# ,
644
648
r#"fn main() { unsafe { if x { foo } } }"# ,
645
649
) ;
646
650
check_edit (
647
- "unsafe" ,
651
+ "loop { foo }. unsafe" ,
648
652
r#"fn main() { loop { foo }.$0 }"# ,
649
653
r#"fn main() { unsafe { loop { foo } } }"# ,
650
654
) ;
651
655
check_edit (
652
- "unsafe" ,
656
+ "if true {}. unsafe" ,
653
657
r#"fn main() { if true {}.$0 }"# ,
654
658
r#"fn main() { unsafe { if true {} } }"# ,
655
659
) ;
656
660
check_edit (
657
- "unsafe" ,
661
+ "while true {}. unsafe" ,
658
662
r#"fn main() { while true {}.$0 }"# ,
659
663
r#"fn main() { unsafe { while true {} } }"# ,
660
664
) ;
661
665
check_edit (
662
- "unsafe" ,
666
+ "for i in 0..10 {}. unsafe" ,
663
667
r#"fn main() { for i in 0..10 {}.$0 }"# ,
664
668
r#"fn main() { unsafe { for i in 0..10 {} } }"# ,
665
669
) ;
666
670
check_edit (
667
- "unsafe" ,
671
+ "if true {1} else {2}. unsafe" ,
668
672
r#"fn main() { let x = if true {1} else {2}.$0 }"# ,
669
673
r#"fn main() { let x = unsafe { if true {1} else {2} } }"# ,
670
674
) ;
@@ -694,7 +698,7 @@ fn main() {
694
698
695
699
check_edit_with_config (
696
700
config. clone ( ) ,
697
- "break" ,
701
+ "42. break" ,
698
702
r#"
699
703
//- minicore: try
700
704
fn main() { 42.$0 }
@@ -713,7 +717,7 @@ fn main() { ControlFlow::Break(42) }
713
717
// what users would see. Unescaping happens thereafter.
714
718
check_edit_with_config (
715
719
config. clone ( ) ,
716
- " break",
720
+ r#"'\\\\'. break"# ,
717
721
r#"
718
722
//- minicore: try
719
723
fn main() { '\\'.$0 }
@@ -727,7 +731,10 @@ fn main() { ControlFlow::Break('\\\\') }
727
731
728
732
check_edit_with_config (
729
733
config,
730
- "break" ,
734
+ r#"match true {
735
+ true => "\${1:placeholder}",
736
+ false => "\\\$",
737
+ }.break"# ,
731
738
r#"
732
739
//- minicore: try
733
740
fn main() {
@@ -753,39 +760,47 @@ fn main() {
753
760
#[ test]
754
761
fn postfix_completion_for_format_like_strings ( ) {
755
762
check_edit (
756
- " format",
763
+ r#""{some_var:?}". format"# ,
757
764
r#"fn main() { "{some_var:?}".$0 }"# ,
758
765
r#"fn main() { format!("{some_var:?}") }"# ,
759
766
) ;
760
767
check_edit (
761
- " panic",
768
+ r#""Panic with {a}". panic"# ,
762
769
r#"fn main() { "Panic with {a}".$0 }"# ,
763
770
r#"fn main() { panic!("Panic with {a}") }"# ,
764
771
) ;
765
772
check_edit (
766
- " println",
773
+ r#""{ 2+2 } { SomeStruct { val: 1, other: 32 } :?}". println"# ,
767
774
r#"fn main() { "{ 2+2 } { SomeStruct { val: 1, other: 32 } :?}".$0 }"# ,
768
775
r#"fn main() { println!("{} {:?}", 2+2, SomeStruct { val: 1, other: 32 }) }"# ,
769
776
) ;
770
777
check_edit (
771
- " loge",
778
+ r#""{2+2}". loge"# ,
772
779
r#"fn main() { "{2+2}".$0 }"# ,
773
780
r#"fn main() { log::error!("{}", 2+2) }"# ,
774
781
) ;
775
782
check_edit (
776
- " logt",
783
+ r#""{2+2}". logt"# ,
777
784
r#"fn main() { "{2+2}".$0 }"# ,
778
785
r#"fn main() { log::trace!("{}", 2+2) }"# ,
779
786
) ;
780
787
check_edit (
781
- " logd",
788
+ r#""{2+2}". logd"# ,
782
789
r#"fn main() { "{2+2}".$0 }"# ,
783
790
r#"fn main() { log::debug!("{}", 2+2) }"# ,
784
791
) ;
785
- check_edit ( "logi" , r#"fn main() { "{2+2}".$0 }"# , r#"fn main() { log::info!("{}", 2+2) }"# ) ;
786
- check_edit ( "logw" , r#"fn main() { "{2+2}".$0 }"# , r#"fn main() { log::warn!("{}", 2+2) }"# ) ;
787
792
check_edit (
788
- "loge" ,
793
+ r#""{2+2}".logi"# ,
794
+ r#"fn main() { "{2+2}".$0 }"# ,
795
+ r#"fn main() { log::info!("{}", 2+2) }"# ,
796
+ ) ;
797
+ check_edit (
798
+ r#""{2+2}".logw"# ,
799
+ r#"fn main() { "{2+2}".$0 }"# ,
800
+ r#"fn main() { log::warn!("{}", 2+2) }"# ,
801
+ ) ;
802
+ check_edit (
803
+ r#""{2+2}".loge"# ,
789
804
r#"fn main() { "{2+2}".$0 }"# ,
790
805
r#"fn main() { log::error!("{}", 2+2) }"# ,
791
806
) ;
@@ -807,21 +822,21 @@ fn main() {
807
822
808
823
check_edit_with_config (
809
824
CompletionConfig { snippets : vec ! [ snippet. clone( ) ] , ..TEST_CONFIG } ,
810
- "ok" ,
825
+ "&&42. ok" ,
811
826
r#"fn main() { &&42.o$0 }"# ,
812
827
r#"fn main() { Ok(&&42) }"# ,
813
828
) ;
814
829
815
830
check_edit_with_config (
816
831
CompletionConfig { snippets : vec ! [ snippet. clone( ) ] , ..TEST_CONFIG } ,
817
- "ok" ,
832
+ "&&42. ok" ,
818
833
r#"fn main() { &&42.$0 }"# ,
819
834
r#"fn main() { Ok(&&42) }"# ,
820
835
) ;
821
836
822
837
check_edit_with_config (
823
838
CompletionConfig { snippets : vec ! [ snippet] , ..TEST_CONFIG } ,
824
- "ok" ,
839
+ "&a.a. ok" ,
825
840
r#"
826
841
struct A {
827
842
a: i32,
0 commit comments