| package joptsimple.examples; |
| |
| import joptsimple.OptionException; |
| import joptsimple.OptionParser; |
| import joptsimple.OptionSet; |
| import org.junit.Test; |
| |
| import static org.junit.Assert.*; |
| |
| public class RequiredOptionsTest { |
| @Test( expected = OptionException.class ) |
| public void allowsSpecificationOfRequiredOptions() { |
| OptionParser parser = new OptionParser() { |
| { |
| accepts( "userid" ).withRequiredArg().required(); |
| accepts( "password" ).withRequiredArg().required(); |
| } |
| }; |
| |
| parser.parse( "--userid", "bob" ); |
| } |
| |
| @Test |
| public void aHelpOptionMeansRequiredOptionsNeedNotBePresent() { |
| OptionParser parser = new OptionParser() { |
| { |
| accepts( "userid" ).withRequiredArg().required(); |
| accepts( "password" ).withRequiredArg().required(); |
| accepts( "help" ).forHelp(); |
| } |
| }; |
| |
| OptionSet options = parser.parse( "--help" ); |
| assertTrue( options.has( "help" ) ); |
| } |
| |
| @Test( expected = OptionException.class ) |
| public void missingHelpOptionMeansRequiredOptionsMustBePresent() { |
| OptionParser parser = new OptionParser() { |
| { |
| accepts( "userid" ).withRequiredArg().required(); |
| accepts( "password" ).withRequiredArg().required(); |
| accepts( "help" ).forHelp(); |
| } |
| }; |
| |
| parser.parse( "" ); |
| } |
| } |