@Test
public void testGetFileValue() throws ParseException
{

    File testDefaultValue = new File("default_file_name");
    ArgumentParser argParser = new ArgumentParser("");
    Option fileOpt = argParser.addArgument("f", "file", true, "Source file name", false);
    File inputValue;
    File resultValue;
    final String shortFileOpt = String.format("-%s", fileOpt.getOpt());
    final String longFileOpt = String.format("--%s", fileOpt.getLongOpt());
    argParser.parseArguments(new String[] {""});
    assertNull(argParser.getFileValue(fileOpt));
    assertEquals(testDefaultValue, argParser.getFileValue(fileOpt, testDefaultValue));
    inputValue = new File("folder/file_name_1");
    argParser.parseArguments(new String[] {shortFileOpt, inputValue.toString()});
    resultValue = argParser.getFileValue(fileOpt);
    assertNotNull(resultValue);
    assertEquals(inputValue, resultValue);
    inputValue = new File("folder/file_name_2");
    argParser.parseArguments(new String[] {shortFileOpt, inputValue.toString()});
    resultValue = argParser.getFileValue(fileOpt, testDefaultValue);
    assertNotNull(resultValue);
    assertEquals(inputValue, resultValue);
    inputValue = new File("file_name_3");
    argParser.parseArguments(new String[] {longFileOpt, inputValue.toString()});
    resultValue = argParser.getFileValue(fileOpt);
    assertNotNull(resultValue);
    assertEquals(inputValue, resultValue);
}