package fr.inria.diversify.coverage; import fr.inria.diversify.codeFragment.CodeFragment; import javassist.CtMethod; import spoon.reflect.code.CtBinaryOperator; import spoon.reflect.declaration.CtElement; import java.io.IOException; import java.util.List; /** * User: Simon * Date: 6/7/13 * Time: 10:12 AM */ public interface ICoverageReport { public void create() throws IOException; public double codeFragmentCoverage(CodeFragment stmt); public int opCodeCoverage(CtMethod method, int indexOpcode); public double elementCoverage(CtElement operator); /** * This method returns for a given code fragment, its distribution along several coverage data files. * Each client coverage data is represented by a jacoco file, to whom an index has been assigned. * @param stmt CodeFragment for which we want to know distribution * @return A list of integers containing the index of the files in which this statement was covered. */ public List<Integer> getCoverageDistribution(CodeFragment stmt); }