private static <T extends ImfUtilityCmdLineArgs> T parseArgs(Class<T> clazz, String[] args) { LOGGER.debug("Parsing command line arguments..."); T imfArgs = CliFactory.parseArguments(clazz, Arrays.copyOfRange(args, 1, args.length)); LogHelper.setLogLevel(imfArgs.getLogLevel().getLogLevel()); LOGGER.debug("Parsed command line arguments: OK\n"); return imfArgs; }
@Test public void testParseCorrectCmdLineArgumentsShortName() { String[] args = new String[]{ "--cpl", "cpl.xml", "--imp", "pathToImp", "-c", "config.xml", "-w", "pathToWorkingDir", "-l", "error" }; ImfUtilityCmdLineArgs cmdLineArgs = CliFactory.parseArguments(ImfUtilityCmdLineArgs.class, args); assertEquals("cpl.xml", cmdLineArgs.getCpl()); assertEquals("pathToImp", cmdLineArgs.getImp()); assertEquals("config.xml", cmdLineArgs.getConfig()); assertEquals("pathToWorkingDir", cmdLineArgs.getWorkingDirectory()); assertEquals(LogLevel.error, cmdLineArgs.getLogLevel()); }
@Test public void testParseCorrectCmdLineArgumentsLongName() { String[] args = new String[]{ "--cpl", "cpl.xml", "--imp", "pathToImp", "--config", "config.xml", "--working-dir", "pathToWorkingDir", "--log-level", "debug" }; ImfUtilityCmdLineArgs cmdLineArgs = CliFactory.parseArguments(ImfUtilityCmdLineArgs.class, args); assertEquals("cpl.xml", cmdLineArgs.getCpl()); assertEquals("pathToImp", cmdLineArgs.getImp()); assertEquals("config.xml", cmdLineArgs.getConfig()); assertEquals("pathToWorkingDir", cmdLineArgs.getWorkingDirectory()); assertEquals(LogLevel.debug, cmdLineArgs.getLogLevel()); }