JCommanderTest.java revision e9229f961b3a5799f6798369afe26dec7960249
1e9229f961b3a5799f6798369afe26dec7960249Cedric Beustpackage com.beust.jcommander;
2e9229f961b3a5799f6798369afe26dec7960249Cedric Beust
3e9229f961b3a5799f6798369afe26dec7960249Cedric Beustimport org.testng.Assert;
4e9229f961b3a5799f6798369afe26dec7960249Cedric Beustimport org.testng.annotations.Test;
5e9229f961b3a5799f6798369afe26dec7960249Cedric Beustimport org.testng.collections.Lists;
6e9229f961b3a5799f6798369afe26dec7960249Cedric Beust
7e9229f961b3a5799f6798369afe26dec7960249Cedric Beustimport java.util.Arrays;
8e9229f961b3a5799f6798369afe26dec7960249Cedric Beustimport java.util.List;
9e9229f961b3a5799f6798369afe26dec7960249Cedric Beust
10e9229f961b3a5799f6798369afe26dec7960249Cedric Beustpublic class JCommanderTest {
11e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  @Parameter
12e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  public List<String> parameters = Lists.newArrayList();
13e9229f961b3a5799f6798369afe26dec7960249Cedric Beust
14e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  @Parameter(names = { "-log", "-verbose" }, description = "Level of verbosity")
15e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  public Integer verbose = 1;
16e9229f961b3a5799f6798369afe26dec7960249Cedric Beust
17e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  @Parameter(names = "-groups", description = "Comma-separated list of group names to be run")
18e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  public String groups;
19e9229f961b3a5799f6798369afe26dec7960249Cedric Beust
20e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  @Parameter(names = "-debug", description = "Debug mode")
21e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  public boolean debug = false;
22e9229f961b3a5799f6798369afe26dec7960249Cedric Beust
23e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  @Test
24e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  public void simpleArgs() {
25e9229f961b3a5799f6798369afe26dec7960249Cedric Beust    JCommanderTest jct = new JCommanderTest();
26e9229f961b3a5799f6798369afe26dec7960249Cedric Beust    String[] argv = { "-log", "2", "-groups", "unit", "a", "b", "c" };
27e9229f961b3a5799f6798369afe26dec7960249Cedric Beust    new JCommander(jct, argv);
28e9229f961b3a5799f6798369afe26dec7960249Cedric Beust
29e9229f961b3a5799f6798369afe26dec7960249Cedric Beust    System.out.println("Verbose:" + verbose);
30e9229f961b3a5799f6798369afe26dec7960249Cedric Beust    Assert.assertEquals(jct.verbose.intValue(), 2);
31e9229f961b3a5799f6798369afe26dec7960249Cedric Beust    Assert.assertEquals(jct.groups, "unit");
32e9229f961b3a5799f6798369afe26dec7960249Cedric Beust    Assert.assertEquals(jct.parameters, Arrays.asList("a", "b", "c"));
33e9229f961b3a5799f6798369afe26dec7960249Cedric Beust  }
34e9229f961b3a5799f6798369afe26dec7960249Cedric Beust}
35