Skip to content

Commit c973752

Browse files
committed
Revert changes coming from scoverage#167 and scoverage#169.
These PRs fix scoverage#165. It's unclear what the problem really is. Issue author has "No source root found for ${sourcepath}" exception in Gradle project. We cannot reproduce the problem. This must be something with user's project configuration or a bug in Gradle plugin. The two PRs were merged hastily all will be reverted. @pbatko please provide test project and report problem in [Gradle Scoverage plugin](https://github.com/scoverage/gradle-scoverage/issues) first.
1 parent e5c998b commit c973752

File tree

4 files changed

+16
-59
lines changed

4 files changed

+16
-59
lines changed

scalac-scoverage-plugin/src/main/scala/scoverage/report/BaseReportWriter.scala

+2-32
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,15 @@ package scoverage.report
22

33
import java.io.File
44

5-
import scoverage.Coverage
6-
7-
class BaseReportWriter(sourceDirectories: Seq[File], outputDir: File, ignoreStatementsNotInSrcDirs: Boolean) {
5+
class BaseReportWriter(sourceDirectories: Seq[File], outputDir: File) {
86

97
// Source paths in canonical form WITH trailing file separator
108
private val formattedSourcePaths: Seq[String] = sourceDirectories filter ( _.isDirectory ) map ( _.getCanonicalPath + File.separator )
119

1210
/**
1311
* Converts absolute path to relative one if any of the source directories is it's parent.
1412
* If there is no parent directory, the path is returned unchanged (absolute).
15-
*
13+
*
1614
* @param src absolute file path in canonical form
1715
*/
1816
def relativeSource(src: String): String = relativeSource(src, formattedSourcePaths)
@@ -31,32 +29,4 @@ class BaseReportWriter(sourceDirectories: Seq[File], outputDir: File, ignoreStat
3129
}
3230
}
3331

34-
def preprocessCoverage(coverage: Coverage): Coverage = {
35-
if (ignoreStatementsNotInSrcDirs)
36-
filteredCoverage(coverage)
37-
else
38-
coverage
39-
}
40-
41-
/**
42-
* Filters out statements not in source roots
43-
* @return new Coverage instance with statements whose src paths are in root source paths.
44-
*/
45-
private def filteredCoverage(coverage: Coverage): Coverage = {
46-
val filteredCoverage = Coverage()
47-
coverage.statements.foreach { stmt =>
48-
if (isInSourceRoots(stmt.source))
49-
filteredCoverage.add(stmt)
50-
}
51-
coverage.ignoredStatements.foreach { stmt =>
52-
if (isInSourceRoots(stmt.source))
53-
filteredCoverage.addIgnoredStatement(stmt)
54-
}
55-
filteredCoverage
56-
}
57-
58-
private def isInSourceRoots(src: String): Boolean = {
59-
formattedSourcePaths.exists(sourcePath => src.startsWith(sourcePath))
60-
}
61-
6232
}

scalac-scoverage-plugin/src/main/scala/scoverage/report/CoberturaXmlWriter.scala

+4-5
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,16 @@ import scoverage._
88
import scala.xml.{Node, PrettyPrinter}
99

1010
/** @author Stephen Samuel */
11-
class CoberturaXmlWriter(sourceDirectories: Seq[File], outputDir: File, ignoreStatementsNotInSrcDirs: Boolean)
12-
extends BaseReportWriter(sourceDirectories, outputDir, ignoreStatementsNotInSrcDirs) {
11+
class CoberturaXmlWriter(sourceDirectories: Seq[File], outputDir: File) extends BaseReportWriter(sourceDirectories, outputDir) {
1312

14-
def this (baseDir: File, outputDir: File, ignoreStatementsNotInSrcDirs: Boolean = false) {
15-
this(Seq(baseDir), outputDir, ignoreStatementsNotInSrcDirs)
13+
def this (baseDir: File, outputDir: File) {
14+
this(Seq(baseDir), outputDir)
1615
}
1716

1817
def write(coverage: Coverage): Unit = {
1918
val file = new File(outputDir, "cobertura.xml")
2019
IOUtils.writeToFile(file, "<?xml version=\"1.0\"?>\n<!DOCTYPE coverage SYSTEM \"http://cobertura.sourceforge.net/xml/coverage-04.dtd\">\n" +
21-
new PrettyPrinter(120, 4).format(xml(preprocessCoverage(coverage))))
20+
new PrettyPrinter(120, 4).format(xml(coverage)))
2221
}
2322

2423
def method(method: MeasuredMethod): Node = {

scalac-scoverage-plugin/src/main/scala/scoverage/report/ScoverageHtmlWriter.scala

+6-9
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,11 @@ import scoverage._
88
import scala.xml.Node
99

1010
/** @author Stephen Samuel */
11-
class ScoverageHtmlWriter(sourceDirectories: Seq[File], outputDir: File, sourceEncoding: Option[String], ignoreStatementsNotInSrcDirs: Boolean)
12-
extends BaseReportWriter(sourceDirectories, outputDir, ignoreStatementsNotInSrcDirs) {
11+
class ScoverageHtmlWriter(sourceDirectories: Seq[File], outputDir: File, sourceEncoding: Option[String]) extends BaseReportWriter(sourceDirectories, outputDir) {
1312

1413
// for backward compatibility only
15-
def this (sourceDirectories: Seq[File], outputDir: File, ignoreStatementsNotInSrcDirs: Boolean = false) {
16-
this(sourceDirectories, outputDir, None, ignoreStatementsNotInSrcDirs)
14+
def this (sourceDirectories: Seq[File], outputDir: File) {
15+
this(sourceDirectories, outputDir, None);
1716
}
1817

1918
// for backward compatibility only
@@ -22,18 +21,16 @@ class ScoverageHtmlWriter(sourceDirectories: Seq[File], outputDir: File, sourceE
2221
}
2322

2423
def write(coverage: Coverage): Unit = {
25-
val preprocessedCoverage = preprocessCoverage(coverage)
26-
2724
val indexFile = new File(outputDir.getAbsolutePath + "/index.html")
2825
val packageFile = new File(outputDir.getAbsolutePath + "/packages.html")
2926
val overviewFile = new File(outputDir.getAbsolutePath + "/overview.html")
3027

3128
val index = IOUtils.readStreamAsString(getClass.getResourceAsStream("/scoverage/index.html"))
3229
IOUtils.writeToFile(indexFile, index)
33-
IOUtils.writeToFile(packageFile, packageList(preprocessedCoverage).toString())
34-
IOUtils.writeToFile(overviewFile, overview(preprocessedCoverage).toString())
30+
IOUtils.writeToFile(packageFile, packageList(coverage).toString())
31+
IOUtils.writeToFile(overviewFile, overview(coverage).toString())
3532

36-
preprocessedCoverage.packages.foreach(writePackage)
33+
coverage.packages.foreach(writePackage)
3734
}
3835

3936
private def writePackage(pkg: MeasuredPackage): Unit = {

scalac-scoverage-plugin/src/main/scala/scoverage/report/ScoverageXmlWriter.scala

+4-13
Original file line numberDiff line numberDiff line change
@@ -7,24 +7,15 @@ import scoverage._
77
import scala.xml.{Node, PrettyPrinter}
88

99
/** @author Stephen Samuel */
10-
class ScoverageXmlWriter(sourceDirectories: Seq[File], outputDir: File, debug: Boolean, ignoreStatementsNotInSrcDirs: Boolean)
11-
extends BaseReportWriter(sourceDirectories, outputDir, ignoreStatementsNotInSrcDirs) {
10+
class ScoverageXmlWriter(sourceDirectories: Seq[File], outputDir: File, debug: Boolean) extends BaseReportWriter(sourceDirectories, outputDir) {
1211

13-
def this (sourceDir: File, outputDir: File, debug: Boolean, ignoreStatementsNotInSrcDirs: Boolean) {
14-
this(Seq(sourceDir), outputDir, debug, ignoreStatementsNotInSrcDirs)
15-
}
16-
17-
def this (sourceDir: File, outputDir: File, debug: Boolean){
18-
this(Seq(sourceDir), outputDir, debug, ignoreStatementsNotInSrcDirs = false)
19-
}
20-
21-
def this (sourceDirectories: Seq[File], outputDir: File, debug: Boolean) {
22-
this(sourceDirectories, outputDir, debug, ignoreStatementsNotInSrcDirs = false)
12+
def this (sourceDir: File, outputDir: File, debug: Boolean) {
13+
this(Seq(sourceDir), outputDir, debug)
2314
}
2415

2516
def write(coverage: Coverage): Unit = {
2617
val file = IOUtils.reportFile(outputDir, debug)
27-
IOUtils.writeToFile(file, new PrettyPrinter(120, 4).format(xml(preprocessCoverage(coverage))))
18+
IOUtils.writeToFile(file, new PrettyPrinter(120, 4).format(xml(coverage)))
2819
}
2920

3021
private def xml(coverage: Coverage): Node = {

0 commit comments

Comments
 (0)