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.assertEquals;
21
22 import org.apache.commons.cli.CommandLine;
23 import org.apache.commons.cli.CommandLineParser;
24 import org.apache.commons.cli.OptionBuilder;
25 import org.apache.commons.cli.Options;
26 import org.apache.commons.cli.PosixParser;
27 import org.junit.jupiter.api.BeforeEach;
28 import org.junit.jupiter.api.Test;
29
30
31
32
33 @SuppressWarnings("deprecation")
34 class BugCLI148Test {
35 private Options options;
36
37 @BeforeEach
38 public void setUp() throws Exception {
39 options = new Options();
40 options.addOption(OptionBuilder.hasArg().create('t'));
41 options.addOption(OptionBuilder.hasArg().create('s'));
42 }
43
44 @Test
45 void testWorkaround1() throws Exception {
46 final CommandLineParser parser = new PosixParser();
47 final String[] args = {"-t-something"};
48
49 final CommandLine commandLine = parser.parse(options, args);
50 assertEquals("-something", commandLine.getOptionValue('t'));
51 }
52
53 @Test
54 void testWorkaround2() throws Exception {
55 final CommandLineParser parser = new PosixParser();
56 final String[] args = {"-t", "\"-something\""};
57
58 final CommandLine commandLine = parser.parse(options, args);
59 assertEquals("-something", commandLine.getOptionValue('t'));
60 }
61 }