blob: 54ce2e9a291d0b983d2bdd832d92026982247dfa (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
package org.kohsuke.args4j;
public class SetterTest extends Args4JTestBase<Setter> {
@Override
public Setter getTestObject() {
return new Setter();
}
public void testSettingStringNoValues() {
Setter bo = testObject;
args = new String[]{};
try {
parser.parseArgument(args);
assertTrue("Default value set.", "default".equals(bo.str));
} catch (CmdLineException e) {
fail("Call without parameters is valid!");
}
}
public void testSettingString() {
Setter bo = testObject;
args = new String[]{"-str","test"};
try {
parser.parseArgument(args);
assertTrue("Given value set.", "TEST".equals(bo.str));
} catch (CmdLineException e) {
fail("Setting a string value should be possible");
}
}
public void testSettingUsage() {
args = new String[]{"-wrong-usage"};
try {
parser.parseArgument(args);
fail("Doesnt detect wrong parameters.");
} catch (CmdLineException e) {
String expectedError = "\"-wrong-usage\" is not a valid option";
String expectedUsage = " -str VAL : set a string";
String errorMessage = e.getMessage();
String[] usageLines = getUsageMessage();
assertUsageLength(1);
assertTrue("Got wrong error message", errorMessage.startsWith(expectedError));
assertEquals(expectedUsage, usageLines[0]);
}
}
public void testMissingParameter() {
args = new String[]{"-str"};
try {
parser.parseArgument(args);
fail("Should miss one parameter.");
} catch (CmdLineException e) {
String expectedError = "Option \"-str\" takes an operand";
String expectedUsage = " -str VAL : set a string";
String[] usageLines = getUsageMessage();
String errorMessage = e.getMessage();
assertUsageLength(1);
assertTrue("Got wrong error message: " + errorMessage, errorMessage.startsWith(expectedError));
assertEquals("Got wrong usage message", expectedUsage, usageLines[0]);
}
}
}
|