@Test
public void testParseCLArgs() {

    Option[] options = Option.parseCLArgs("-a -b b -c c c c c c -d d d e f g".split("\\s+"), templates);
    Option a = Option.findOption("-a", options);
    assertTrue("".equals(a.getValue()));
    Option b = Option.findOption("-b", options);
    assertTrue("b".equals(b.getValue()));
    assertTrue("b".equals(b.getValues()[0]));
    assertTrue(b.getValues().length == 1);
    Option c = Option.findOption("-c", options);
    assertTrue("c c c c c".equals(c.getValue()));
    assertTrue(Arrays.equals(new String[] { "c", "c", "c", "c", "c" }, c.getValues()));
    assertTrue(c.getValues().length == 5);
    Option d = Option.findOption("-d", options);
    assertTrue("d d".equals(d.getValue()));
    assertTrue(Arrays.equals(new String[] { "d", "d" }, d.getValues()));
    assertTrue(d.getValues().length == 2);
    Option list = Option.findListOption(options);
    assertTrue("e f g".equals(list.getValue()));
    assertTrue(Arrays.equals(new String[] { "e", "f", "g" }, list.getValues()));
    assertTrue(list.getValues().length == 3);
}