Skip to content

Commit 1ddab84

Browse files
authored
Merge pull request #5954 from epage/tests
test(complete): Minor test cleanup
2 parents 02244a6 + 8a66dbf commit 1ddab84

File tree

1 file changed

+50
-44
lines changed

1 file changed

+50
-44
lines changed

clap_complete/tests/testsuite/engine.rs

Lines changed: 50 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -680,15 +680,10 @@ baz
680680
#[test]
681681
fn suggest_multi_positional() {
682682
let mut cmd = Command::new("dynamic")
683-
.arg(
684-
clap::Arg::new("positional-1")
685-
.value_parser(["pos_1"])
686-
.index(1),
687-
)
683+
.arg(clap::Arg::new("positional-1").value_parser(["pos_1_a", "pos_1_b", "pos_1_c"]))
688684
.arg(
689685
clap::Arg::new("positional-2")
690686
.value_parser(["pos_2_a", "pos_2_b", "pos_2_c"])
691-
.index(2)
692687
.num_args(3),
693688
)
694689
.arg(
@@ -699,7 +694,7 @@ fn suggest_multi_positional() {
699694
);
700695

701696
assert_data_eq!(
702-
complete!(cmd, "pos_1 pos_a [TAB]"),
697+
complete!(cmd, "pos_1_a pos_2_a [TAB]"),
703698
snapbox::str![[r#"
704699
pos_2_a
705700
pos_2_b
@@ -708,7 +703,7 @@ pos_2_c
708703
);
709704

710705
assert_data_eq!(
711-
complete!(cmd, "pos_1 pos_a pos_b [TAB]"),
706+
complete!(cmd, "pos_1_a pos_2_a pos_2_b [TAB]"),
712707
snapbox::str![[r#"
713708
pos_2_a
714709
pos_2_b
@@ -717,7 +712,7 @@ pos_2_c
717712
);
718713

719714
assert_data_eq!(
720-
complete!(cmd, "--format json pos_1 [TAB]"),
715+
complete!(cmd, "--format json pos_1_a [TAB]"),
721716
snapbox::str![[r#"
722717
pos_2_a
723718
pos_2_b
@@ -728,7 +723,7 @@ pos_2_c
728723
);
729724

730725
assert_data_eq!(
731-
complete!(cmd, "--format json pos_1 pos_a [TAB]"),
726+
complete!(cmd, "--format json pos_1_a pos_2_a [TAB]"),
732727
snapbox::str![[r#"
733728
pos_2_a
734729
pos_2_b
@@ -737,15 +732,15 @@ pos_2_c
737732
);
738733

739734
assert_data_eq!(
740-
complete!(cmd, "--format json pos_1 pos_a pos_b pos_c [TAB]"),
735+
complete!(cmd, "--format json pos_1_a pos_2_a pos_2_b pos_2_c [TAB]"),
741736
snapbox::str![[r#"
742737
--format
743738
--help Print help
744739
"#]]
745740
);
746741

747742
assert_data_eq!(
748-
complete!(cmd, "--format json -- pos_1 pos_a [TAB]"),
743+
complete!(cmd, "--format json -- pos_1_a pos_2_a [TAB]"),
749744
snapbox::str![[r#"
750745
pos_2_a
751746
pos_2_b
@@ -754,7 +749,7 @@ pos_2_c
754749
);
755750

756751
assert_data_eq!(
757-
complete!(cmd, "--format json -- pos_1 pos_a pos_b [TAB]"),
752+
complete!(cmd, "--format json -- pos_1_a pos_2_a pos_2_b [TAB]"),
758753
snapbox::str![[r#"
759754
pos_2_a
760755
pos_2_b
@@ -763,7 +758,10 @@ pos_2_c
763758
);
764759

765760
assert_data_eq!(
766-
complete!(cmd, "--format json -- pos_1 pos_a pos_b pos_c [TAB]"),
761+
complete!(
762+
cmd,
763+
"--format json -- pos_1_a pos_2_a pos_2_b pos_2_c [TAB]"
764+
),
767765
snapbox::str![]
768766
);
769767
}
@@ -772,9 +770,8 @@ pos_2_c
772770
fn suggest_multi_positional_unbounded() {
773771
let mut cmd = Command::new("dynamic")
774772
.arg(
775-
clap::Arg::new("positional")
776-
.value_parser(["pos_1", "pos_2"])
777-
.index(1)
773+
clap::Arg::new("positional-1")
774+
.value_parser(["pos_1_a", "pos_1_b", "pos_1_c"])
778775
.num_args(2..),
779776
)
780777
.arg(
@@ -785,17 +782,16 @@ fn suggest_multi_positional_unbounded() {
785782
);
786783

787784
assert_data_eq!(
788-
complete!(cmd, "pos_1 [TAB]"),
785+
complete!(cmd, "pos_1_a [TAB]"),
789786
snapbox::str![[r#"
790-
pos_1
791-
pos_2
787+
pos_1_a
788+
pos_1_b
789+
pos_1_c
792790
"#]]
793791
);
794-
795-
assert_data_eq!(complete!(cmd, "pos_1 --[TAB]"), snapbox::str![""]);
796-
792+
assert_data_eq!(complete!(cmd, "pos_1_a --[TAB]"), snapbox::str![""]);
797793
assert_data_eq!(
798-
complete!(cmd, "pos_1 --format [TAB]"),
794+
complete!(cmd, "pos_1_a --format [TAB]"),
799795
snapbox::str![[r#"
800796
json
801797
yaml
@@ -804,27 +800,48 @@ toml
804800
);
805801

806802
assert_data_eq!(
807-
complete!(cmd, "pos_1 --format json [TAB]"),
803+
complete!(cmd, "pos_1_a --format json [TAB]"),
808804
snapbox::str![[r#"
809-
pos_1
810-
pos_2
805+
pos_1_a
806+
pos_1_b
807+
pos_1_c
811808
--format
812809
--help Print help
813810
"#]]
814811
);
815812

816813
assert_data_eq!(
817-
complete!(cmd, "pos_1 pos_2 --[TAB]"),
814+
complete!(cmd, "pos_1_a pos_1_b [TAB]"),
815+
snapbox::str![[r#"
816+
pos_1_a
817+
pos_1_b
818+
pos_1_c
819+
--format
820+
--help Print help
821+
"#]]
822+
);
823+
assert_data_eq!(
824+
complete!(cmd, "pos_1_a pos_1_b --[TAB]"),
818825
snapbox::str![[r#"
819826
--format
820827
--help Print help
821828
"#]]
822829
);
823830
assert_data_eq!(
824-
complete!(cmd, "pos_1 pos_2 --format json [TAB]"),
831+
complete!(cmd, "pos_1_a pos_1_b --format [TAB]"),
825832
snapbox::str![[r#"
826-
pos_1
827-
pos_2
833+
json
834+
yaml
835+
toml
836+
"#]]
837+
);
838+
839+
assert_data_eq!(
840+
complete!(cmd, "pos_1_a pos_1_b --format json [TAB]"),
841+
snapbox::str![[r#"
842+
pos_1_a
843+
pos_1_b
844+
pos_1_c
828845
--format
829846
--help Print help
830847
"#]]
@@ -847,7 +864,6 @@ fn suggest_delimiter_values() {
847864
)
848865
.arg(
849866
clap::Arg::new("pos")
850-
.index(1)
851867
.value_parser(["a_pos", "b_pos", "c_pos"])
852868
.value_delimiter(','),
853869
);
@@ -1046,14 +1062,9 @@ fn suggest_positional_long_allow_hyphen() {
10461062
.arg(
10471063
clap::Arg::new("positional_a")
10481064
.value_parser(["--pos_a"])
1049-
.index(1)
10501065
.allow_hyphen_values(true),
10511066
)
1052-
.arg(
1053-
clap::Arg::new("positional_b")
1054-
.index(2)
1055-
.value_parser(["pos_b"]),
1056-
);
1067+
.arg(clap::Arg::new("positional_b").value_parser(["pos_b"]));
10571068

10581069
assert_data_eq!(
10591070
complete!(cmd, "--format --json --pos[TAB]"),
@@ -1104,14 +1115,9 @@ fn suggest_positional_short_allow_hyphen() {
11041115
.arg(
11051116
clap::Arg::new("positional_a")
11061117
.value_parser(["-a"])
1107-
.index(1)
11081118
.allow_hyphen_values(true),
11091119
)
1110-
.arg(
1111-
clap::Arg::new("positional_b")
1112-
.index(2)
1113-
.value_parser(["pos_b"]),
1114-
);
1120+
.arg(clap::Arg::new("positional_b").value_parser(["pos_b"]));
11151121

11161122
assert_data_eq!(
11171123
complete!(cmd, "--format --json -a [TAB]"),

0 commit comments

Comments
 (0)