package dev.peerat.parser.java; import static org.junit.Assert.assertTrue; 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 dev.peerat.parser.Parser; class UtilsTests { @Test void main() throws Exception{ List files = load(new File("workspaces.txt")); long time = System.currentTimeMillis(); for(File file : files){ if(!file.getName().endsWith(".java")) continue; System.out.println("LOOKING "+file); String result = ""; BufferedReader reader = new BufferedReader(new FileReader(file)); String line; while((line = reader.readLine()) != null) result+=line+"\n"; reader.close(); Parser parser = new JavaParser(); JavaFile javaFile = new JavaFile(); parser.parse(result, javaFile); } assertTrue((System.currentTimeMillis()-time) < 30000); } private List load(File config) throws Exception{ System.out.println("loading "+config.getAbsolutePath()); BufferedReader reader = new BufferedReader(new FileReader(config)); List workspaces = new ArrayList<>(); String line; while((line = reader.readLine()) != null) workspaces.add(new File(line)); reader.close(); System.out.println("loaded "+workspaces.size()+" workspaces"); List result = new ArrayList<>(); for(File workspace : workspaces){ result.addAll(files(workspace)); System.out.println("Loaded["+result.size()+"] "+workspace.getAbsolutePath()); } return result; } 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; } }