@Override protected boolean containsOption(String name) { return this.source.containsOption(name); }
@Override protected List<String> getNonOptionArgs() { return this.source.getNonOptionArgs(); }
@Override @Nullable protected List<String> getOptionValues(String name) { return this.source.getOptionValues(name); }
CommandLineArgs commandLineArgs = new CommandLineArgs(); for (String arg : args) { if (arg.startsWith("--")) { throw new IllegalArgumentException("Invalid argument syntax: " + arg); commandLineArgs.addOptionArg(optionName, optionValue); commandLineArgs.addNonOptionArg(arg);
@Test public void withMixOfOptionsHavingValueAndOptionsHavingNoValue() { SimpleCommandLineArgsParser parser = new SimpleCommandLineArgsParser(); CommandLineArgs args = parser.parse("--o1=v1", "--o2"); assertThat(args.containsOption("o1"), is(true)); assertThat(args.containsOption("o2"), is(true)); assertThat(args.containsOption("o3"), is(false)); assertThat(args.getOptionValues("o1").get(0), equalTo("v1")); assertThat(args.getOptionValues("o2"), equalTo(Collections.EMPTY_LIST)); assertThat(args.getOptionValues("o3"), nullValue()); }
@Test public void withNonOptionArguments() { SimpleCommandLineArgsParser parser = new SimpleCommandLineArgsParser(); CommandLineArgs args = parser.parse("--o1=v1", "noa1", "--o2=v2", "noa2"); assertThat(args.getOptionValues("o1").get(0), equalTo("v1")); assertThat(args.getOptionValues("o2").get(0), equalTo("v2")); List<String> nonOptions = args.getNonOptionArgs(); assertThat(nonOptions.get(0), equalTo("noa1")); assertThat(nonOptions.get(1), equalTo("noa2")); assertThat(nonOptions.size(), equalTo(2)); }
/** * Get the property names for the option arguments. */ @Override public String[] getPropertyNames() { return StringUtils.toStringArray(this.source.getOptionNames()); }
CommandLineArgs commandLineArgs = new CommandLineArgs(); for (String arg : args) { if (arg.startsWith("--")) { throw new IllegalArgumentException("Invalid argument syntax: " + arg); commandLineArgs.addOptionArg(optionName, optionValue); commandLineArgs.addNonOptionArg(arg);
@Test public void withSingleOptionAndValue() { SimpleCommandLineArgsParser parser = new SimpleCommandLineArgsParser(); CommandLineArgs args = parser.parse("--o1=v1"); assertThat(args.containsOption("o1"), is(true)); assertThat(args.getOptionValues("o1").get(0), equalTo("v1")); }
/** * Get the property names for the option arguments. */ @Override public String[] getPropertyNames() { return StringUtils.toStringArray(this.source.getOptionNames()); }
CommandLineArgs commandLineArgs = new CommandLineArgs(); for (String arg : args) { if (arg.startsWith("--")) { throw new IllegalArgumentException("Invalid argument syntax: " + arg); commandLineArgs.addOptionArg(optionName, optionValue); commandLineArgs.addNonOptionArg(arg);
@Test public void withSingleOptionAndNoValue() { SimpleCommandLineArgsParser parser = new SimpleCommandLineArgsParser(); CommandLineArgs args = parser.parse("--o1"); assertThat(args.containsOption("o1"), is(true)); assertThat(args.getOptionValues("o1"), equalTo(Collections.EMPTY_LIST)); }
@Override @Nullable protected List<String> getOptionValues(String name) { return this.source.getOptionValues(name); }
@Override protected List<String> getNonOptionArgs() { return this.source.getNonOptionArgs(); }
@Override protected boolean containsOption(String name) { return this.source.containsOption(name); }
@Test(expected = UnsupportedOperationException.class) public void assertOptionNamesIsUnmodifiable() { CommandLineArgs args = new SimpleCommandLineArgsParser().parse(); args.getOptionNames().add("bogus"); }
CommandLineArgs commandLineArgs = new CommandLineArgs(); for (String arg : args) { if (arg.startsWith("--")) { throw new IllegalArgumentException("Invalid argument syntax: " + arg); commandLineArgs.addOptionArg(optionName, optionValue); commandLineArgs.addNonOptionArg(arg);
@Test public void withNoOptions() { SimpleCommandLineArgsParser parser = new SimpleCommandLineArgsParser(); assertThat(parser.parse().getOptionValues("foo"), nullValue()); }
@Test(expected = UnsupportedOperationException.class) public void assertNonOptionArgsIsUnmodifiable() { CommandLineArgs args = new SimpleCommandLineArgsParser().parse(); args.getNonOptionArgs().add("foo"); }
@Override protected boolean containsOption(String name) { return this.source.containsOption(name); }