Program: 12307
Project: 12307
Buggy source:
/** 
 * To run the test class via <p> mvn exec:java -Dexec.mainClass="uk.ac.shef.dcs.jate.app.AppATEACLRDTECTest" -Dexec.classpathScope="test"
 * @param args
 * @throws JATEException
 */
public static void main(String[] args) throws JATEException {
  try {
    AppATEACLRDTECTest appATETest=new AppATEACLRDTECTest(solrHome.toString(),solrCoreName);
    boolean reindex=false;
    if (args.length > 0) {
      try {
        reindex=Boolean.valueOf(args[0]);
      }
 catch (      Exception e) {
      }
    }
    long numOfDocs=validate_indexing();
    if (numOfDocs == 0 || reindex) {
      appATETest.indexAndExtract(corpusDir);
    }
    List<JATETerm> terms=null;
    AppATTFTest appATTFTest=new AppATTFTest();
    terms=appATTFTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appATTFTest.evaluate(terms,AppATTF.class.getSimpleName());
    AppChiSquareTest appChiSquareTest=new AppChiSquareTest();
    terms=appChiSquareTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appChiSquareTest.evaluate(terms,AppChiSquare.class.getSimpleName());
    AppCValueTest appCValueTest=new AppCValueTest();
    terms=appCValueTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appCValueTest.evaluate(terms,AppCValue.class.getSimpleName());
    AppGlossExTest appGlossExTest=new AppGlossExTest();
    terms=appGlossExTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appGlossExTest.evaluate(terms,AppGlossEx.class.getSimpleName());
    AppRAKETest appRAKETest=new AppRAKETest();
    terms=appRAKETest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appRAKETest.evaluate(terms,AppRAKE.class.getSimpleName());
    AppRIDFTest appRIDFTest=new AppRIDFTest();
    terms=appRIDFTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appRIDFTest.evaluate(terms,AppRIDF.class.getSimpleName());
    AppTermExTest appTermExTest=new AppTermExTest();
    terms=appTermExTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appTermExTest.evaluate(terms,AppTermEx.class.getSimpleName());
    AppTFIDFTest appTFIDFTest=new AppTFIDFTest();
    terms=appTFIDFTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appTFIDFTest.evaluate(terms,AppTFIDF.class.getSimpleName());
    AppTTFTest appTTFTest=new AppTTFTest();
    terms=appTTFTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appTTFTest.evaluate(terms,AppTTF.class.getSimpleName());
    AppWeirdnessTest appWeirdnessTest=new AppWeirdnessTest();
    terms=appWeirdnessTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appWeirdnessTest.evaluate(terms,AppWeirdness.class.getSimpleName());
  }
 catch (  Exception e) {
    e.printStackTrace();
  }
 finally {
    try {
      server.getCoreContainer().getCore(solrCoreName).close();
      server.getCoreContainer().shutdown();
      server.close();
    }
 catch (    IOException e) {
      e.printStackTrace();
    }
  }
  System.exit(0);
}

Fixed version (ground truth):
/** 
 * To run the test class via <p> mvn exec:java -Dexec.mainClass="uk.ac.shef.dcs.jate.app.AppATEACLRDTECTest" -Dexec.classpathScope="test"
 * @param args
 * @throws JATEException
 */
public static void main(String[] args) throws JATEException {
  try {
    AppATEACLRDTECTest appATETest=new AppATEACLRDTECTest(solrHome.toString(),solrCoreName);
    boolean reindex=false;
    if (args.length > 0) {
      try {
        reindex=Boolean.valueOf(args[0]);
      }
 catch (      Exception e) {
      }
    }
    long numOfDocs=validate_indexing();
    if (numOfDocs == 0 || reindex) {
      appATETest.indexAndExtract(corpusDir);
    }
    List<JATETerm> terms=null;
    AppChiSquareTest appChiSquareTest=new AppChiSquareTest();
    terms=appChiSquareTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appChiSquareTest.evaluate(terms,AppChiSquare.class.getSimpleName());
    System.exit(0);
    AppCValueTest appCValueTest=new AppCValueTest();
    terms=appCValueTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appCValueTest.evaluate(terms,AppCValue.class.getSimpleName());
    AppGlossExTest appGlossExTest=new AppGlossExTest();
    terms=appGlossExTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appGlossExTest.evaluate(terms,AppGlossEx.class.getSimpleName());
    AppRAKETest appRAKETest=new AppRAKETest();
    terms=appRAKETest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appRAKETest.evaluate(terms,AppRAKE.class.getSimpleName());
    AppRIDFTest appRIDFTest=new AppRIDFTest();
    terms=appRIDFTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appRIDFTest.evaluate(terms,AppRIDF.class.getSimpleName());
    AppTermExTest appTermExTest=new AppTermExTest();
    terms=appTermExTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appTermExTest.evaluate(terms,AppTermEx.class.getSimpleName());
    AppTFIDFTest appTFIDFTest=new AppTFIDFTest();
    terms=appTFIDFTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appTFIDFTest.evaluate(terms,AppTFIDF.class.getSimpleName());
    AppTTFTest appTTFTest=new AppTTFTest();
    terms=appTTFTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appTTFTest.evaluate(terms,AppTTF.class.getSimpleName());
    AppWeirdnessTest appWeirdnessTest=new AppWeirdnessTest();
    terms=appWeirdnessTest.rankAndFilter(server,solrCoreName,appATETest.jateProp);
    appWeirdnessTest.evaluate(terms,AppWeirdness.class.getSimpleName());
  }
 catch (  Exception e) {
    e.printStackTrace();
  }
 finally {
    try {
      server.getCoreContainer().getCore(solrCoreName).close();
      server.getCoreContainer().shutdown();
      server.close();
    }
 catch (    IOException e) {
      e.printStackTrace();
    }
  }
  System.exit(0);
}