blob: afeb393804946d631d08ce4aa3d880e96a917aa1 [file] [log] [blame]
package org.kohsuke.args4j;
public class StringWithMetavarTest extends Args4JTestBase<StringWithMetavar> {
@Override
public StringWithMetavar getTestObject() {
return new StringWithMetavar();
}
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 METAVAR : set a string";
String[] usageLines = getUsageMessage();
String errorMessage = e.getMessage();
assertUsageLength(1);
assertTrue("Got wrong error message", errorMessage.startsWith(expectedError));
assertEquals("Got wrong usage message", 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 METAVAR : set a string";
String errorMessage = e.getMessage();
String[] usageLines = getUsageMessage();
assertUsageLength(1);
assertTrue("Got wrong error message", errorMessage.startsWith(expectedError));
assertEquals("Got wrong usage message", expectedUsage, usageLines[0]);
}
}
}