public class OptionTest extends TestCase {
public void test_parseOptions() throws Exception {
String[] cmdArray = {"-sql","-ds", "200"};
Option opt = Option.parseOptions(cmdArray);
Assert.assertNotNull(opt);
Assert.assertTrue(opt.printSqlData());
Assert.assertTrue(opt.printDataSourceData());
Assert.assertFalse(opt.printActiveConn());
Assert.assertEquals(opt.getPid(), 200);
cmdArray = new String[] {"-act", "738"};
opt = Option.parseOptions(cmdArray);
Assert.assertNotNull(opt);
Assert.assertFalse(opt.printSqlData());
Assert.assertFalse(opt.printDataSourceData());
Assert.assertTrue(opt.printActiveConn());
Assert.assertEquals(opt.getPid(), 738);
cmdArray = new String[] {"-ds", "-detail", "1319"};
opt = Option.parseOptions(cmdArray);
Assert.assertNotNull(opt);
Assert.assertFalse(opt.printSqlData());
Assert.assertTrue(opt.printDataSourceData());
Assert.assertFalse(opt.printActiveConn());
Assert.assertTrue(opt.isDetailPrint());
Assert.assertEquals(opt.getPid(), 1319);
cmdArray = new String[] {"-sql","-id","5","200"};
opt = Option.parseOptions(cmdArray);
Assert.assertNotNull(opt);
Assert.assertEquals(opt.getId(), 5);
Assert.assertEquals(opt.getPid(), 200);
cmdArray = new String[] {"-sql","-id","5","200", "3"};
opt = Option.parseOptions(cmdArray);
Assert.assertNotNull(opt);
Assert.assertEquals(opt.getId(), 5);
Assert.assertEquals(opt.getPid(), 200);
Assert.assertEquals(opt.getInterval(), 3);
cmdArray = new String[] {"-ds","-id","5", "-detail", "200", "3"};
opt = Option.parseOptions(cmdArray);
Assert.assertNotNull(opt);
Assert.assertEquals(opt.getId(), 5);
Assert.assertEquals(opt.getPid(), 200);
Assert.assertEquals(opt.getInterval(), 3);
Assert.assertEquals(opt.isDetailPrint(), true);
//not enough arguments
cmdArray = new String[] {};
try {
opt = Option.parseOptions(cmdArray);