package joptsimple.examples; import static java.util.Arrays.*; import static java.util.Collections.*; import joptsimple.OptionParser; import joptsimple.OptionSet; import org.junit.Test; import static org.junit.Assert.*; public class LongOptionsWithArgumentsTest { @Test public void supportsLongOptionsWithArgumentsAndAbbreviations() { OptionParser parser = new OptionParser(); parser.accepts( "flag" ); parser.accepts( "count" ).withRequiredArg(); parser.accepts( "level" ).withOptionalArg(); OptionSet options = parser.parse( "-flag", "--co", "3", "--lev" ); assertTrue( options.has( "flag" ) ); assertTrue( options.has( "count" ) ); assertTrue( options.hasArgument( "count" ) ); assertEquals( "3", options.valueOf( "count" ) ); assertEquals( asList( "3" ), options.valuesOf( "count" ) ); assertTrue( options.has( "level" ) ); assertFalse( options.hasArgument( "level" ) ); assertNull( options.valueOf( "level" ) ); assertEquals( emptyList(), options.valuesOf( "level" ) ); } }