package org.erlide.test_support; import java.util.ArrayList; import java.util.List; import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.IResource; import org.eclipse.core.resources.IResourceVisitor; import org.eclipse.core.runtime.CoreException; public class SuiteLocator { private final IProject project; public SuiteLocator(final IProject project) { this.project = project; } public List<IResource> findSuites() throws CoreException { final ResVisitor visitor = new ResVisitor(); project.accept(visitor); return visitor.result; } protected class ResVisitor implements IResourceVisitor { public List<IResource> result = new ArrayList<>(); @Override public boolean visit(final IResource arg) throws CoreException { if (arg instanceof IFile && arg.getName().endsWith("_SUITE.erl")) { result.add(arg); } return true; } } }