Skip to content

Commit bcbff58

Browse files
committed
Added flags for report generation scoverage#43
1 parent 88d9bee commit bcbff58

File tree

1 file changed

+21
-11
lines changed

1 file changed

+21
-11
lines changed

Diff for: src/main/scala/scoverage/ScoverageSbtPlugin.scala

+21-11
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,10 @@ class ScoverageSbtPlugin extends sbt.Plugin {
1616
val excludedPackages = SettingKey[String]("scoverage-excluded-packages")
1717
val minimumCoverage = SettingKey[Double]("scoverage-minimum-coverage")
1818
val failOnMinimumCoverage = SettingKey[Boolean]("scoverage-fail-on-minimum-coverage")
19-
val highlighting = SettingKey[Boolean]("scoverage-highlighting", "enables range positioning for highlighting")
19+
val highlighting = settingKey[Boolean]("enables range positioning for highlighting")
20+
val scoverageOutputCobertua = settingKey[Boolean]("enables cobertura XML report generation")
21+
val scoverageOutputXML = settingKey[Boolean]("enables xml report generation")
22+
val scoverageOutputHTML = settingKey[Boolean]("enables html report generation")
2023
}
2124

2225
import ScoverageKeys._
@@ -43,6 +46,9 @@ class ScoverageSbtPlugin extends sbt.Plugin {
4346
failOnMinimumCoverage := false,
4447
highlighting := false,
4548
excludedPackages in Scoverage := "",
49+
scoverageOutputXML := true,
50+
scoverageOutputHTML := true,
51+
scoverageOutputCobertua := true,
4652

4753
scalacOptions in Scoverage <++= (crossTarget in Compile, update, excludedPackages in Scoverage) map {
4854
(target, report, excluded) =>
@@ -103,18 +109,22 @@ class ScoverageSbtPlugin extends sbt.Plugin {
103109
val measurements = IOUtils.invoked(measurementFiles)
104110
coverage.apply(measurements)
105111

106-
streams.value.log
107-
.info(s"[scoverage] Generating Cobertura report [${coberturaDir.getAbsolutePath}/cobertura.xml]")
108-
new CoberturaXmlWriter((baseDirectory in Compile).value, coberturaDir).write(coverage)
109-
110-
streams.value.log.info(s"[scoverage] Generating XML report [${reportDir.getAbsolutePath}/scoverage.xml]")
111-
new ScoverageXmlWriter((scalaSource in Compile).value, reportDir, false).write(coverage)
112-
new ScoverageXmlWriter((scalaSource in Compile).value, reportDir, true).write(coverage)
112+
if (scoverageOutputCobertua.value) {
113+
streams.value.log
114+
.info(s"[scoverage] Generating Cobertura report [${coberturaDir.getAbsolutePath}/cobertura.xml]")
115+
new CoberturaXmlWriter((baseDirectory in Compile).value, coberturaDir).write(coverage)
116+
}
113117

114-
streams.value.log.info(s"[scoverage] Generating HTML report [${reportDir.getAbsolutePath}/index.html]")
115-
new ScoverageHtmlWriter((scalaSource in Compile).value, reportDir).write(coverage)
118+
if (scoverageOutputXML.value) {
119+
streams.value.log.info(s"[scoverage] Generating XML report [${reportDir.getAbsolutePath}/scoverage.xml]")
120+
new ScoverageXmlWriter((scalaSource in Compile).value, reportDir, false).write(coverage)
121+
new ScoverageXmlWriter((scalaSource in Compile).value, reportDir, true).write(coverage)
122+
}
116123

117-
streams.value.log.info("[scoverage] Reports completed")
124+
if (scoverageOutputHTML.value) {
125+
streams.value.log.info(s"[scoverage] Generating HTML report [${reportDir.getAbsolutePath}/index.html]")
126+
new ScoverageHtmlWriter((scalaSource in Compile).value, reportDir).write(coverage)
127+
}
118128

119129
val min = minimumCoverage.value
120130
val failOnMin = failOnMinimumCoverage.value

0 commit comments

Comments
 (0)