@Override
  protected void processOptions(LinkedList<String> args)
  throws IOException {
    CommandFormat cf = new CommandFormat(0, Integer.MAX_VALUE,
        OPTION_PATHONLY, OPTION_DIRECTORY, OPTION_HUMAN,
        OPTION_HIDENONPRINTABLE, OPTION_RECURSIVE, OPTION_REVERSE,
        OPTION_MTIME, OPTION_SIZE, OPTION_ATIME, OPTION_ECPOLICY);
    cf.parse(args);
    pathOnly = cf.getOpt(OPTION_PATHONLY);
    dirRecurse = !cf.getOpt(OPTION_DIRECTORY);
    setRecursive(cf.getOpt(OPTION_RECURSIVE) && dirRecurse);
    humanReadable = cf.getOpt(OPTION_HUMAN);
    hideNonPrintable = cf.getOpt(OPTION_HIDENONPRINTABLE);
    orderReverse = cf.getOpt(OPTION_REVERSE);
    orderTime = cf.getOpt(OPTION_MTIME);
    orderSize = !orderTime && cf.getOpt(OPTION_SIZE);
    useAtime = cf.getOpt(OPTION_ATIME);
    displayECPolicy = cf.getOpt(OPTION_ECPOLICY);
    if (args.isEmpty()) args.add(Path.CUR_DIR);

    initialiseOrderComparator();
  }
@Test(expected = UnsupportedOperationException.class)
  public void processPathFileDisplayECPolicyWhenUnsupported()
      throws IOException {
    TestFile testFile = new TestFile("testDirectory", "testFile");
    LinkedList<PathData> pathData = new LinkedList<PathData>();
    pathData.add(testFile.getPathData());
    Ls ls = new Ls();
    LinkedList<String> options = new LinkedList<String>();
    options.add("-e");
    ls.processOptions(options);
    ls.processArguments(pathData);
  }