Skip to content

Commit

Permalink
Revert "SONAR-6202 Compute overall coverage on all files"
Browse files Browse the repository at this point in the history
This reverts commit eac465b.

Conflicts:
	plugins/sonar-core-plugin/src/main/java/org/sonar/plugins/core/CorePlugin.java
  • Loading branch information
henryju committed Mar 2, 2015
1 parent 6f44881 commit 7fec39b
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 251 deletions.
Expand Up @@ -281,7 +281,6 @@ public List getExtensions() {
DirectoriesDecorator.class,
FilesDecorator.class,
ManualMeasureDecorator.class,
MissingOverallCoverageDecorator.class,

// time machine
TendencyDecorator.class,
Expand Down

This file was deleted.

This file was deleted.

Expand Up @@ -34,48 +34,13 @@
*/
public final class CoverageMeasuresBuilder {

/**
* @since 5.1
*/
public static enum CoverageType {
UNIT(CoreMetrics.LINES_TO_COVER, CoreMetrics.UNCOVERED_LINES, CoreMetrics.COVERAGE_LINE_HITS_DATA,
CoreMetrics.CONDITIONS_TO_COVER, CoreMetrics.UNCOVERED_CONDITIONS, CoreMetrics.CONDITIONS_BY_LINE,
CoreMetrics.COVERED_CONDITIONS_BY_LINE),
IT(CoreMetrics.IT_LINES_TO_COVER, CoreMetrics.IT_UNCOVERED_LINES, CoreMetrics.IT_COVERAGE_LINE_HITS_DATA,
CoreMetrics.IT_CONDITIONS_TO_COVER, CoreMetrics.IT_UNCOVERED_CONDITIONS, CoreMetrics.IT_CONDITIONS_BY_LINE,
CoreMetrics.IT_COVERED_CONDITIONS_BY_LINE),
OVERALL(CoreMetrics.OVERALL_LINES_TO_COVER, CoreMetrics.OVERALL_UNCOVERED_LINES, CoreMetrics.OVERALL_COVERAGE_LINE_HITS_DATA,
CoreMetrics.OVERALL_CONDITIONS_TO_COVER, CoreMetrics.OVERALL_UNCOVERED_CONDITIONS, CoreMetrics.OVERALL_CONDITIONS_BY_LINE,
CoreMetrics.OVERALL_COVERED_CONDITIONS_BY_LINE);

private final Metric<Integer> linesToCover;
private final Metric<Integer> uncoveredLines;
private final Metric<String> lineHits;
private final Metric<Integer> conditionsToCover;
private final Metric<Integer> uncoveredConditions;
private final Metric<String> conditionsByLine;
private final Metric<String> coveredConditionsByLine;

private CoverageType(Metric<Integer> linesToCover, Metric<Integer> uncoveredLines, Metric<String> lineHits, Metric<Integer> conditionsToCover,
Metric<Integer> uncoveredConditions, Metric<String> conditionsByLine, Metric<String> coveredConditionsByLine) {
this.linesToCover = linesToCover;
this.uncoveredLines = uncoveredLines;
this.lineHits = lineHits;
this.conditionsToCover = conditionsToCover;
this.uncoveredConditions = uncoveredConditions;
this.conditionsByLine = conditionsByLine;
this.coveredConditionsByLine = coveredConditionsByLine;
}

public List<Metric> all() {
return Arrays.<Metric>asList(linesToCover, uncoveredLines, lineHits, conditionsToCover, uncoveredConditions, conditionsByLine, coveredConditionsByLine);
}
}

/**
* Metrics of generated measures
*/
public static final List<Metric> METRICS = CoverageType.UNIT.all();
public static final List<Metric> METRICS = Arrays.<Metric>asList(
CoreMetrics.LINES_TO_COVER, CoreMetrics.UNCOVERED_LINES, CoreMetrics.COVERAGE_LINE_HITS_DATA,
CoreMetrics.CONDITIONS_TO_COVER, CoreMetrics.UNCOVERED_CONDITIONS, CoreMetrics.CONDITIONS_BY_LINE,
CoreMetrics.COVERED_CONDITIONS_BY_LINE);

private int totalCoveredLines = 0, totalConditions = 0, totalCoveredConditions = 0;
private SortedMap<Integer, Integer> hitsByLine = Maps.newTreeMap();
Expand Down Expand Up @@ -145,33 +110,29 @@ public SortedMap<Integer, Integer> getCoveredConditionsByLine() {
}

public Collection<Measure> createMeasures() {
return createMeasures(CoverageType.UNIT);
}

public Collection<Measure> createMeasures(CoverageType type) {
Collection<Measure> measures = Lists.newArrayList();
if (getLinesToCover() > 0) {
measures.add(new Measure(type.linesToCover, (double) getLinesToCover()));
measures.add(new Measure(type.uncoveredLines, (double) (getLinesToCover() - getCoveredLines())));
measures.add(new Measure(type.lineHits).setData(KeyValueFormat.format(hitsByLine)).setPersistenceMode(PersistenceMode.DATABASE));
measures.add(new Measure(CoreMetrics.LINES_TO_COVER, (double) getLinesToCover()));
measures.add(new Measure(CoreMetrics.UNCOVERED_LINES, (double) (getLinesToCover() - getCoveredLines())));
measures.add(new Measure(CoreMetrics.COVERAGE_LINE_HITS_DATA).setData(KeyValueFormat.format(hitsByLine)).setPersistenceMode(PersistenceMode.DATABASE));
}
if (getConditions() > 0) {
measures.add(new Measure(type.conditionsToCover, (double) getConditions()));
measures.add(new Measure(type.uncoveredConditions, (double) (getConditions() - getCoveredConditions())));
measures.add(createConditionsByLine(type));
measures.add(createCoveredConditionsByLine(type));
measures.add(new Measure(CoreMetrics.CONDITIONS_TO_COVER, (double) getConditions()));
measures.add(new Measure(CoreMetrics.UNCOVERED_CONDITIONS, (double) (getConditions() - getCoveredConditions())));
measures.add(createConditionsByLine());
measures.add(createCoveredConditionsByLine());
}
return measures;
}

private Measure createCoveredConditionsByLine(CoverageType type) {
return new Measure(type.coveredConditionsByLine)
private Measure createCoveredConditionsByLine() {
return new Measure(CoreMetrics.COVERED_CONDITIONS_BY_LINE)
.setData(KeyValueFormat.format(coveredConditionsByLine))
.setPersistenceMode(PersistenceMode.DATABASE);
}

private Measure createConditionsByLine(CoverageType type) {
return new Measure(type.conditionsByLine)
private Measure createConditionsByLine() {
return new Measure(CoreMetrics.CONDITIONS_BY_LINE)
.setData(KeyValueFormat.format(conditionsByLine))
.setPersistenceMode(PersistenceMode.DATABASE);
}
Expand Down

0 comments on commit 7fec39b

Please sign in to comment.