1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.cli.bug;
19
20 import static org.junit.jupiter.api.Assertions.assertThrows;
21
22 import org.apache.commons.cli.AmbiguousOptionException;
23 import org.apache.commons.cli.DefaultParser;
24 import org.apache.commons.cli.Option;
25 import org.apache.commons.cli.Options;
26 import org.apache.commons.cli.ParseException;
27 import org.junit.jupiter.api.Test;
28
29 class BugCLI252Test {
30
31 private Options getOptions() {
32 final Options options = new Options();
33 options.addOption(Option.builder().longOpt("prefix").get());
34 options.addOption(Option.builder().longOpt("prefixplusplus").get());
35 return options;
36 }
37
38 @Test
39 void testAmbiquousOptionName() {
40 assertThrows(AmbiguousOptionException.class, () -> new DefaultParser().parse(getOptions(), new String[] { "--pref" }));
41 }
42
43 @Test
44 void testExactOptionNameMatch() throws ParseException {
45 new DefaultParser().parse(getOptions(), new String[] {"--prefix"});
46 }
47
48 }