import java.io.BufferedReader; import java.io.File; import java.io.FileReader; import java.util.ArrayList; import java.util.List; import org.junit.jupiter.api.Test; import be.jeffcheasey88.peeratcode.parser.TokenValidator; import be.jeffcheasey88.peeratcode.parser.java.JavaFile; import be.jeffcheasey88.peeratcode.parser.java.JavaParser; class GlobalCover { @Test void workspace() throws Exception{ JavaParser parser = new JavaParser(); List files = files(new File("C:\\Users\\jeffc\\eclipse-workspace")); int validated = 0; double tokens = 0; int count = 0; long time = System.currentTimeMillis(); for(File file : files){ if(file.getName().endsWith(".java")){ parser.parse(new BufferedReader(new FileReader(file)), new JavaFile()); validated += TokenValidator.MAX_VALIDATE; tokens += TokenValidator.TOKENS; TokenValidator.MAX_VALIDATE = 0; TokenValidator.TOKENS = 0; count++; } } System.out.println("Load time : "+((System.currentTimeMillis()-time)/1000.0)+"s"); System.out.printf("%.3f%% ("+validated+") validated in "+count+" files !\n", ((validated/tokens)*100.0)); } private List files(File dir){ List result = new ArrayList<>(); if(dir.isDirectory()){ for(File file : dir.listFiles()) result.addAll(files(file)); }else result.add(dir); return result; } }